home *** CD-ROM | disk | FTP | other *** search
/ Chip 1997 March / CHIP Mart 1997.iso / prg / Modemdr / MDR52DOC.TXT < prev    next >
Encoding:
Text File  |  1993-06-02  |  161.6 KB  |  4,159 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                  __________________________________________________
  9.                                        T H E 
  10.                                      M O D E M
  11.                                     D O C T O R
  12.                                  Version 5.2S / 5.2R
  13.                      Hank Volpe copyr. 1989,1990,1991,1992,1993
  14.                                    P.O. Box 43214
  15.                                  Baltimore MD 21236      
  16.                  __________________________________________________
  17.  
  18.      What's New  . . . . . . . . . . . . . . . . . . . . . . . . . . .    Page 3
  19.  
  20.      Forward . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    Page 4
  21.  
  22.      Section 1. Introduction . . . . . . . . . . . . . . . . . . . . .    Page 5
  23.  
  24.      Section 2. Starting MDR . . . . . . . . . . . . . . . . . . . . .    Page 7
  25.           The /B switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 7
  26.           The /Q switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  27.           The /S switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  28.           The /X switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 8
  29.           The /F switch  . . . . . . . . . . . . . . . . . . . . . . .    Page 9
  30.  
  31.      Section 3. First Time Setup . . . . . . . . . . . . . . . . . . .   Page 10
  32.           A. Test Modem/ Uart      . . . . . . . . . . . . . . . . . .   Page 12
  33.           B. Uart Tests  . . . . . . . . . . . . . . . . . . . . . . .   Page 14
  34.           C. Return to main menu . . . . . . . . . . . . . . . . . . .   Page 15
  35.  
  36.      Section 4.0 The Main Menu . . . . . . . . . . . . . . . . . . . .   Page 15
  37.           4.01 Hot-Key selection   . . . . . . . . . . . . . . . . . .   Page 15
  38.                ALT-F . . . . . . . . . . . . . . . . . . . . . . . . .   Page 15
  39.                ALT-T . . . . . . . . . . . . . . . . . . . . . . . . .   Page 16
  40.                ALT-H . . . . . . . . . . . . . . . . . . . . . . . . .   Page 16
  41.           4.1 Login In Comm ports  . . . . . . . . . . . . . . . . . .   Page 16
  42.           4.11 What do IRQ's and COMM Ports do ? . . . . . . . . . . .   Page 16
  43.           4.12 Port assignments and their meaning  . . . . . . . . . .   Page 17
  44.           4.13 Testing defective Ports   . . . . . . . . . . . . . . .   Page 19
  45.           4.2 Regs       . . . . . . . . . . . . . . . . . . . . . . .   Page 19
  46.                Line Control Register . . . . . . . . . . . . . . . . .   Page 20
  47.                Line Status Register  . . . . . . . . . . . . . . . . .   Page 20
  48.                Modem Control Register  . . . . . . . . . . . . . . . .   Page 21
  49.                Modem Status Register . . . . . . . . . . . . . . . . .   Page 22
  50.                Interrupt ID Register . . . . . . . . . . . . . . . . .   Page 23
  51.                Interrupt Enable Register . . . . . . . . . . . . . . .   Page 24
  52.                Interrupt Mask Register . . . . . . . . . . . . . . . .   Page 25
  53.           4.30 Handshaking tests . . . . . . . . . . . . . . . . . . .   Page 25
  54.           4.30A S-Register Displays  . . . . . . . . . . . . . . . . .   Page 26
  55.           4.31 Carrier Tests   . . . . . . . . . . . . . . . . . . . .   Page 26
  56.           4.31 Modem Driver Modules  . . . . . . . . . . . . . . . . .   Page 27
  57.           4.32 Types of Carrier Tests  . . . . . . . . . . . . . . . .   Page 28
  58.           4.33 AT Instruction Set Tests  . . . . . . . . . . . . . . .   Page 28
  59.           4.34 Uart or Dumb Modem Tests  . . . . . . . . . . . . . . .   Page 29
  60.           4.35 Error Messages  . . . . . . . . . . . . . . . . . . . .   Page 30
  61.           4.36 IRQ Failures  . . . . . . . . . . . . . . . . . . . . .   Page 30
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  77.  
  78.  
  79.           4.4 Loopback Tests . . . . . . . . . . . . . . . . . . . . .   Page 31
  80.           4.41 Loopback Test Error messages  . . . . . . . . . . . . .   Page 32
  81.           4.5 Options Mode . . . . . . . . . . . . . . . . . . . . . .   Page 33
  82.           4.51 Interactive Mode  . . . . . . . . . . . . . . . . . . .   Page 33
  83.                ALT-B . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  84.                ALT-C . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  85.                ALT-N . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  86.                ALT-R . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  87.                ALT-H . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  88.                ALT-X . . . . . . . . . . . . . . . . . . . . . . . . .   Page 33
  89.           4.51A Testing for Interrupt Latency  . . . . . . . . . . . .   Page 34
  90.           4.52 View Current Statistics . . . . . . . . . . . . . . . .   Page 34
  91.           4.53 Print Current Statistics  . . . . . . . . . . . . . . .   Page 34
  92.           4.54 Reset Current Statistics  . . . . . . . . . . . . . . .   Page 34
  93.           4.6 Setup Mode . . . . . . . . . . . . . . . . . . . . . . .   Page 35
  94.                Mdr Color Selection Screen  . . . . . . . . . . . . . .   Page 35
  95.           4.7 Exit Program . . . . . . . . . . . . . . . . . . . . . .   Page 36
  96.  
  97.      5.0 Error Messages and their Meanings . . . . . . . . . . . . . .   Page 36
  98.           General Program Errors or Warnings . . . . . . . . . . . . .   Page 36
  99.           Setup Mode Diagnostics . . . . . . . . . . . . . . . . . . .   Page 37
  100.           Uart diagnostics . . . . . . . . . . . . . . . . . . . . . .   Page 40
  101.           Report Generator Messages  . . . . . . . . . . . . . . . . .   Page 41
  102.           Static DTR/DSR   RTS/CTS . . . . . . . . . . . . . . . . . .   Page 41
  103.           Carrier and Dynamic tests  . . . . . . . . . . . . . . . . .   Page 42
  104.           General program warnings . . . . . . . . . . . . . . . . . .   Page 43
  105.  
  106.      Section 6. Special Modes and Information  . . . . . . . . . . . .   Page 47
  107.           6.1 Using Modem Drivers  . . . . . . . . . . . . . . . . . .   Page 47
  108.                6.11 External Modem Drivers . . . . . . . . . . . . . .   Page 48
  109.           6.2 Using the Command Line Mode switch /S  . . . . . . . . .   Page 49
  110.           6.3 Using the Hot-Keys   . . . . . . . . . . . . . . . . . .   Page 50
  111.                ALT-B Change Baud rate  . . . . . . . . . . . . . . . .   Page 50
  112.                ALT-C Clear Screen  . . . . . . . . . . . . . . . . . .   Page 50
  113.                ALT-F Force Microprocessor  . . . . . . . . . . . . . .   Page 51
  114.                ALT-H Help  . . . . . . . . . . . . . . . . . . . . . .   Page 51
  115.                ALT-R Register Display  . . . . . . . . . . . . . . . .   Page 51
  116.                ALT-X Exit Mode . . . . . . . . . . . . . . . . . . . .   Page 51
  117.                Control -Break  . . . . . . . . . . . . . . . . . . . .   Page 51
  118.           6.4 Logging in Defective Ports   . . . . . . . . . . . . . .   Page 51
  119.           6.5 What tests cannot Do . . . . . . . . . . . . . . . . . .   Page 53
  120.           6.6 Quirks with Some Modems  . . . . . . . . . . . . . . . .   Page 53
  121.           6.7 Buffered vs Direct Connect Modems  . . . . . . . . . . .   Page 54
  122.  
  123.      Section 7. Benefits of Registration . . . . . . . . . . . . . . .   Page 54
  124.      Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 55
  125.      Disclaimer  . . . . . . . . . . . . . . . . . . . . . . . . . . .   Page 55
  126.      Modem Doctor History  . . . . . . . . . . . . . . . . . . . . . .   Page 56
  127.  
  128.  
  129.                                         Page 2
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  145.  
  146.  
  147.  
  148.   All of the documentation text contained in this file is copyrighted 1989-
  149.   1993 by Hank Volpe. This file is the technical reference manual that
  150.   accompanies the Modem Doctor. This manual has been written for the expert
  151.   user who would like to have background information on how the Modem Doctor
  152.   conducts its various tests. It also catalogs the many error messages and
  153.   their meanings, explains some of the mnemonics used in testing, and
  154.   contains a brief history of the different versions of the program.
  155.   Distribution of this text without the Modem Doctor shareware version and
  156.   its support files is prohibited by the author.
  157.  
  158.                    -------------------------------------------
  159.                       What's New in Modem Doctor Version 5.2
  160.                     -------------------------------------------
  161.  
  162.   For those of you familiar with Modem Doctor, here is a brief look at the
  163.   improved and added features of version 5.2. If you are new to Modem
  164.   Doctor, take a look at the users manual file (MDRFIRST.TXT) that
  165.   accompanies your Modem Doctor package.
  166.  
  167.   1) Screen presentations have been enhanced to make it easier to spot 
  168.   potential problems and areas of concerns. 
  169.  
  170.   2) Login in and Startup sequence. 
  171.   Modem Doctor now finds, identifies, and verifies interrupts from all comm 
  172.   ports under test. A new interrupt selection window has also been added, even 
  173.   though Modem Doctor automatically displays the correct IRQ line. Note: It may
  174.   not be desired to verify interrupts in all computer environments. For those
  175.   special situations, a new switch /Q has been added. Using /Q will defeat
  176.   the IRQ verification routines. For more info, see the section about switches
  177.   later in this document.
  178.  
  179.   3) Regs- The ability to read and modify any S-register exists in a pulldown  
  180.   menu. I cannot give all registers names, because there is such a discrepancy 
  181.   between modem vendors.
  182.  
  183.   4) Carrier and Loopback   
  184.   The previous incarnation of the C language had a problem with properly 
  185.   running delays on machines with system clocks greater than 33 megahertz. As a 
  186.   result, the timer-tick routines did not accurately count 1 second intervals 
  187.   on these machines. As a result, I have new code installed to detect proper 
  188.   timing sequences. 
  189.  
  190.   5) Interactive mode now has a new test for interrupt latency. You can vary 
  191.   the amount of time that Modem Doctor stays in a loop waiting for characters, 
  192.   thus confirming if the speed of your display adapter is causing a 
  193.   communication problem. 
  194.  
  195.  
  196.  
  197.                                          Page 3
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  213.  
  214.  
  215.  
  216.  
  217.  
  218.   6) FOSSIL and INT 14 support   
  219.   A new primitive module has been added that works with FOSSIL drivers, and INT 
  220.   14 kernels. I know it doesn't make much sense to put a kernel in the way of a 
  221.   testing program, but then again, it does extend what Modem Doctor can do. To 
  222.   start in this mode, type mdr /f. It will automatically find a driver or 
  223.   report what it can or can't do. Important to note. The Fossil driver 
  224.   determines if a port gets fossil support or INT 14 support. The FOSSIL driver 
  225.   must be loaded to support the desired number of ports, otherwise Modem Doctor 
  226.   grabs the first port and makes it the FOSSIL supported port, making any 
  227.   others supported by INT 14.
  228.  
  229.   7) A new "heads-up" display shows you the status of all your serial ports, 
  230.   handles and identifies Mircosoft Compatible mouse drivers, allows easy 
  231.   control over interrupt lines, and adds new built-in modem drivers.
  232.  
  233.   8) A new Hot-Key to select or disable transmitter-driven interrupts. Some
  234.   Uarts, most notably early 8250's, have a problem with transmitter interrupts. 
  235.   With this feature enabled, you can test your chips ability to handle high-
  236.   speed interrupts, and if errors are detected, you can switch this feature off 
  237.   and test again.
  238.  
  239.   Forward
  240.   -------
  241.   Welcome to the Modem Doctor. This documentation along with the program is
  242.   a good source of information about how Uarts and Serial Ports work with
  243.   Modems in your Personal Computer.
  244.            
  245.   There are two versions of the Modem Doctor; The shareware version 5.0S and
  246.   the registered Version 5.0R. There are some differences between the two.
  247.   Both however are full-functioned diagnostics tools. The differences
  248.   between the  two are as follows;
  249.            
  250.            Version 5.2S & 5.2R supports COM1 through COM8 
  251.            Version 5.2R allows custom port selections 
  252.            Version 5.2S supports speeds to 2400 bps
  253.            Version 5.2R supports speeds to 57,600 bps
  254.            
  255.        Version 5.2S does not include Manual Log-in of Comm ports, the
  256.        Digital or the Analog Loopback testing, or any of the dynamic
  257.        handshaking tests supported in version 5.2R, or the /s or /x 
  258.        command-line modes of operation.
  259.            
  260.   This documentation covers both versions, however the feature differences
  261.   above are provided for your reference.
  262.   This manual is provided as a technical reference for advanced users or for
  263.   those wishing to get more background information on tests. For first time
  264.  
  265.                                          Page 4
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.  
  273.  
  274.  
  275.  
  276.  
  277.  
  278.  
  279.  
  280.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  281.  
  282.  
  283.   users I would suggest reading the Getting started Manual text file
  284.   MDRFIRST.TXT, which is a little more basic in its approach.
  285.  
  286.  
  287.   I sincerely hope that you take a good look at the program and the
  288.   documentation. The Modem Doctor is about as complete a diagnostic tool you
  289.   can find for your serial port and modem. A complete program history
  290.   follows the documentation. The Modem Doctor versions 2.2, 3.0 , and 4.0 were
  291.   received very well nationally and internationally, Version 5.0 now adds
  292.   more tests, more user features and more flexibility for you to use. Thanks
  293.   to those that have registered and have made the Modem Doctor a viable
  294.   package for all of us that sincerely enjoy using modems.
  295.            
  296.   If you are using the shareware version and wish to order, please use the
  297.   Order form included with this package or see Section 7, Benefits of
  298.   registration at the end of this documentation. You can always get the latest 
  299.   version of Modem Doctor from the Modem Doctor BBS (410-256-3631, 24 hrs, 
  300.   speeds to 16.8kbps). There is no requirement to register Modem Doctor in 
  301.   order to use the BBS or to have your questions answered. Access is easy, and 
  302.   downloads are available on the first call for many hard-to-find shareware 
  303.   communication utilities.
  304.  
  305.   Section 1. Introduction - 
  306.   ------------------------- 
  307.   The Modem Doctor is a professional diagnostic tool designed to work with
  308.   IBM-PC's and compatibles. There are two versions of the Modem Doctor, the
  309.   shareware version and the registered version. The registered version of
  310.   the Modem Doctor contains complete diagnostics for 8250-B, 8250-A, 16450,
  311.   16550, 16550A(x), and compatible Uarts, RS-232 data lines, and carrier
  312.   tests. Some of the many diagnostic features of the registered version are; 
  313.                
  314.    **  Support for COM 1 through COM 8 using system IRQ's 2,3,4,5 or 7.
  315.    **  Baud Rates from 300 to 57600 bps
  316.    **  Support for Courier HST/Dual Standard/V.32 Modems [+],
  317.        Hayes 1200, 2400, Ultra and V9600 series Modems [+*],
  318.        ZyXEL, Practical Periperals, Intel, and Sierra Semiconductor
  319.        modems. A Generic Driver is provided for all others.
  320.  
  321.    **  Auto-detection of modems that use &T0 (CCITT V.54) diagnostics
  322.    **  Auto log-in of COMM ports 1 - 4 to DOS for use by other programs.
  323.  
  324.    **  Manual log-in of up to 8 COMM ports for non-standard hardware,
  325.        including those with defective Uarts (on manual selection). 
  326.    **  On-screen display of all 8250 /16450/ 16550 Uart registers.
  327.    **  On-screen display of modem S-Registers.
  328.    **  Full Diagnostic tests of Uart and RS-232 Channels including;
  329.          -- ALL Uart registers.
  330.          -- ALL RS-232 handshaking Signals.
  331.          -- 8259 Interrupt Controller mask registers 
  332.  
  333.                                          Page 5
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.  
  348.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  349.  
  350.  
  351.          -- Digital loopback Uart tests including chips with Tri-stated 
  352.             OUT2 signals.
  353.          -- Analog loopback data tests.
  354.     **  Full diagnostic checks of "AT" instruction set modems;
  355.          -- Carrier tests on both originate and answer frequencies.
  356.          -- Carrier test interface for "dumb" modems or data channels.       
  357.          -- Modem microprocessor command channel diagnostics.
  358.          -- Support for high speed modems.           
  359.          -- Support for modems that use the alternate &T0 self test mode. 
  360.          -- Dynamic simulated on-line testing of RTS/CTS and XON/XOFF 
  361.             handshaking.
  362.          -- Static DTR/DSR and RTS/CTS uart handshaking tests.
  363.          -- Ability to display any S-Register pairs
  364.     **  Interactive Mode with 16K communications buffer for;    
  365.         -- TTY mode interactive communications over serial port or modem 
  366.             while on-line.
  367.         -- Interrupt latency test, you can use this to determine if your
  368.            display adapter is too slow for your high-speed modem.
  369.         -- Custom designed tests...help menu included.
  370.         -- On-line "Hot-key" viewing of 8250 Uart registers.
  371.     **  Hot-Keys for selecting the baud rate, to force a modem
  372.             microprocessor test mode, and to enable/disable transmitter
  373.             driven interrupts.
  374.     **  User Selection of modem drivers. Like printer drivers, these
  375.             software modules add more selections and more test capability to
  376.             The Modem Doctor. 
  377.     **  Ability to use external modem drivers. External modem drivers
  378.             make it possible to add special modems that might not use
  379.             standard AT conventions to the Modem Doctor without you having
  380.             to update to a new version of the program.
  381.     **  Built in report generator that displays the results of all tests run
  382.             on all serial ports and modems. Report can be printed at any
  383.             time and reset at any time by the user. 
  384.     **  Status bar that continuously displays the port, speed,
  385.             microprocessor status, Transmitter Interrupt enable status
  386.             and modem driver selections.
  387.     **  User defined Colors for all screens
  388.     **  Compatibility with mouse drivers. Mouse drivers also properly
  389.             enabled after exiting Modem Doctor.
  390.     **  Command Line Mode interface for setting up a modem to an
  391.             initialization string contained in a user created file;
  392.        -- A small text file contains the port (and optional address), the
  393.        speed, and the string to send to the modem. Any text editor can
  394.        create the file at any time!
  395.     **  Automatic detection of incorrect Com1 and Com2 port assignments,
  396.         IRQ assignment errors, missing IRQ signals, and missing handshake
  397.         signals.
  398.  
  399.   The Modem Doctor and all of its documentation is copyrighted by Hank
  400.  
  401.                                          Page 6
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  417.  
  418.  
  419.   Volpe. The shareware version of this program may be distributed on
  420.   not charged for its duplication or acquisition (except for BBS systems
  421.   that charge a user fee for system access). If you are a shareware
  422.   distributor and have received permission to distribute past versions of
  423.   the Modem Doctor, you are granted permission also for version 5.2 as long
  424.   as you follow the same guidelines for distribution as before. Under 
  425.   no conditions can anyone accept payment for the Modem Doctor but Hank
  426.   Volpe or agents authorized for resale by Hank Volpe. The Modem Doctor is
  427.   distributed on as "as-is" basis, with no warranties for usefulness or
  428.   suitability expressed or implied. Users of the shareware version are
  429.   granted a limited license to use this program for a trial period only.    
  430.   Please let your conscience be your guide as to what you believe has been a
  431.   fair trial period, for without the support of users who have registered,
  432.   the Modem Doctor would not be the product that it is today.
  433.  
  434.   The Modem Doctor is a very flexible package for both the new user and for
  435.   the experienced technician. The focus of this manual is to give you a
  436.   technical reference regarding how the Modem Doctor works, what is the
  437.   meaning of error messages you may encounter, and how the tests are
  438.   constructed to operate between your PC and your modem. First time users or
  439.   those unfamiliar with how the Modem Doctor operates should read the file
  440.   MDRFIRST.TXT. MDRFIRST explains how to start and use the Modem Doctor, how
  441.   the pulldowns operate, and how to use the menu and control system.      
  442.  
  443.   Section 2. Starting MDR     
  444.   ------------------------     
  445.   The Modem Doctor has been designed to work with PC-Type serial ports and
  446.   "AT" instruction set (so called Hayes compatible[++]) modems. The Modem
  447.   Doctor requires at least 1 serial port to operate. MDR is written to run
  448.   under MS or PC DOS 2.2 or higher, and will work with any standard display
  449.   adaptor in normal text mode. The program requires at least 200K of program
  450.   memory space. When MDR is started, it will use the last text mode that the
  451.   display adaptor was in before the Modem Doctor started. If you have
  452.   created a custom color file (see Options mode), your screen colors will be
  453.   displayed as you selected them. If not, default colors will be loaded
  454.   depending on the mode you are currently in (Color or Black /White). 
  455.   Modem Doctor starts just like any other program. From the dos prompt, type
  456.   MDR. There are however several command line switches you might need to use
  457.   from time to time.
  458.  
  459.   The /B switch
  460.   -------------
  461.   Code has been included to work with hardware-incompatible display adapters
  462.   as long as they are at least IBM-PC Bios compatible. For most computers,
  463.   this is not necessary and will slow down screen displays, plus it will
  464.   change the appearance of the input windows. The reason for using this
  465.   switch is (for example), if you wish to route the output of the program
  466.   through a voice synthesizer or operate it under a program that requires
  467.   all screen writes to go through your Bios. If you wish to use this bios
  468.  
  469.                                          Page 7
  470.  
  471.  
  472.  
  473.  
  474.  
  475.  
  476.  
  477.  
  478.  
  479.  
  480.  
  481.  
  482.  
  483.  
  484.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  485.  
  486.  
  487.   compatible mode instead of direct display writes, start the program using
  488.   the Bios switch ;   MDR /B 
  489.  
  490.  
  491.  
  492.  
  493.  
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506.  
  507.  
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.                                          Page 8
  538.  
  539.  
  540.  
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.  
  550.  
  551.  
  552.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  553.  
  554.  
  555.  
  556.   The /Q switch
  557.   -------------
  558.   Version 5.x includes new tests to verify the accuracy of IRQ settings. However
  559.   this self-testing might not be desirable in some computer environments. The
  560.   /Q switch makes it possible to defeat this self test of IRQ assignments. Using
  561.   /Q, Modem Doctor will report "Standard Assignments" and not verify the 
  562.   proper configuration of IRQ settings. Use this switch if you experience
  563.   a "freeze-up" of the program at the inital sign-on screen. To bypass IRQ
  564.   verification, start the program with the IRQ switch  MDR /Q
  565.  
  566.            
  567.   The /S switch
  568.   --------------
  569.   Registered versions 4.0 and higher also can be run to quickly program and
  570.   setup a Modem. To use this mode start the program with the setup switch ;
  571.   MDR /S (see Section 3). 
  572.  
  573.   The /X switch
  574.   --------------
  575.   Registered versions 4.0 and higher have the ability to swap the
  576.   communication pointers for COM1 and COM2 in memory. To use this mode, type
  577.   MDR /X. Com1's pointer will be swapped to COM2 (and visa versa).  You can 
  578.   specify any one of the 4 comm ports used by dos by typing;
  579.  
  580.   MDR /X [port] [port], 
  581.   where each [port] is a different comm port..ie to swap Com1 and Com3, type 
  582.   MDR /X 1 3. MDR /X without port numbers flips com1 and com2 by default. This 
  583.   condition is not permament. To flip these again, just type MDR /X  or if you 
  584.   used comm numbers, type MDR /X [port] [port]. The reason for this command 
  585.   line  switch is for convienence and also to  make it easier for technicians to swap
  586.   port assignments without having to change port  jumpers. This mode is not generally
  587.   useful except when you believe you have addresses set incorrectly or if you wish
  588.   to use  a serial device that  is normally Com2 as  Com1 (such as a  serial printer)
  589.   from a high-level  language that does not  support 2 comm ports.  These changes are
  590.   temporary. Permanent fixes can only be done in these cases if you physically change
  591.   the addresses on your serial card.
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.                                          Page 9
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  621.  
  622.  
  623.  
  624.   The /F switch
  625.   -------------
  626.   Normally, Modem Doctor and most comm programs directly control the hardware 
  627.   of your computer. Uart registers, interrupt controllers, and system hooks are 
  628.   all involved. Another way to perform control in a machine-independant way is 
  629.   by using kernels. Kernels are small programs that reside as TSR's (Terminate 
  630.   Stay Resident) in your computer. You can instruct Modem Doctor to operate in 
  631.   this manner, and instead of assuming complete control over your system, Modem 
  632.   Doctor will work through system kernels. X00 and BNU are two such kernel or 
  633.   FOSSIL programs. If you use Modem Doctor in this manner, some uart 
  634.   programming and error trapping is not possible (because the FOSSIL drivers do 
  635.   not support function calls to handle all test conditions). However, this 
  636.   command can be useful if you wish to test the proper operation of a FOSSIL 
  637.   driver in your system. Other Int14 type kernels are also supported. To start 
  638.   Modem Doctor in this mode, type MDR /F.
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.                                         Page 10
  674.  
  675.  
  676.  
  677.  
  678.  
  679.  
  680.  
  681.  
  682.  
  683.  
  684.  
  685.  
  686.  
  687.  
  688.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  689.  
  690.  
  691.  
  692.   Section 3. First Time Setup     
  693.   ---------------------------     
  694.   The first time you start the Modem Doctor, it will begin several system
  695.   checks. These checks are not repeated until you start the program over
  696.   again from the Dos prompt. First, the Modem Doctor checks to see what
  697.   hardware is available and reports its results to you. Displayed on the
  698.   bottom line is the serial number unique to each copy (registered version).
  699.   If incorrect COMM addresses are detected or if swapped addresses are
  700.   detected, an Alert-bar will be displayed, warning you that a non-standard
  701.   assignment was detected, and you are asked if you wish to have this fixed
  702.   for testing purposes only.    
  703.  
  704.   ┌───────────────────────────── The Modem Doctor─────────────────────────────┐
  705.   │                         Welcome to the Modem Doctor                       │
  706.   └───────────────────────────────────────────────────────────────────────────┘
  707.       ╒[ Modem / Uart Hardware Detection]══════════════════════════════════╕
  708.       │ Port assignments  Base(hex)    Irq       Special Port Usage        │
  709.       │ Com port 1   [ ]     3f8        4                                  │
  710.       │ Com port 2   [ ]     2f8        3    IRQ assigned to a mouse driver│
  711.       │ Com port 3   [ ]  not found                                        │
  712.       │ Com port 4   [ ]  not found                                        │
  713.       │ Com port 5   [ ]                                                   │
  714.       │ Com port 6   [ ]                                                   │
  715.       │ Com port 7   [ ]                                                   │
  716.       │ Com port 8   [ ]                                                   │
  717.       └────────────────────────────────────────────────────────────────────┘
  718.  
  719.    ╔[  Serial Port Detection ]═══════════════════════════════════════════════╗
  720.    ║                          Serial port detection                          ║
  721.    ║                Searching for other standard active Comm ports           ║
  722.    ║                                                                         ║
  723.    ║                              Total Comm ports  =2                       ║
  724.    ║                        PRESS ANY KEY TO START TESTING                   ║
  725.    ║                                                                         ║
  726.    ║                                                                         ║
  727.    ║                                                                         ║
  728.    ══════════════════════════════════════════════════════════════════════════╝ 
  729.  
  730.   Modem Doctor 5.0 uses a heads-up display that shows you the Comm port 
  731.   assignment number, the base i/o address, and the interrupt line in use. 
  732.   Unlike previous versions, Modem Doctor actually creates a system interrupt 
  733.   and traps its ID. Running under DOS, Modem Doctor will always identify the 
  734.   correct IRQ line. In multi-tasking situations, this test may not be valid, 
  735.   which is why a new window has been created to allow you to easily select any 
  736.   IRQ line you wish to use.
  737.  
  738.  
  739.  
  740.  
  741.                                         Page 11
  742.  
  743.  
  744.  
  745.  
  746.  
  747.  
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  757.  
  758.  
  759.  
  760.  
  761.  
  762.    ╔[  Ports  ]═╗   ╔[  IRQ's  ]═╗    ╔[  Baud  ]══╗  
  763.    ║ Use COM 1  ║   ║ Use IRQ 2  ║    ║   300 BPS  ║  
  764.    ║ Use COM 2  ║   ║ Use IRQ 3  ║    ║  1200 BPS  ║  
  765.    ╚════════════╝   ║ Use IRQ 4  ║    ║  2400 BPS  ║  
  766.                     ║ Use IRQ 5  ║    ║  4800 BPS  ║ * 
  767.                     ║ Use IRQ 7  ║    ║  9600 BPS  ║ * 
  768.                     ╚════════════╝    ║ 19200 BPS  ║ * 
  769.                                       ║ 38400 BPS  ║ * Registered Versions
  770.                                       ║ 57600 BPS  ║ * only
  771.                                       ╚════════════╝  
  772.           
  773.   Next, you are instructed to pick from a list of valid Comm ports. The only
  774.   ports that are listed are valid ports that MDR found when it first
  775.   started. The registered version allows you to add ports that are not
  776.   "standard" ports, (check the section on Login). Use the arrow keys to find
  777.   your selection, and then press return to select.
  778.  
  779.   A window now opens showing you your IRQ line choices. The sliding bar will 
  780.   pick the IRQ line Modem Doctor found valid during the first set of tests. You 
  781.   can change this to any IRQ line you wish. A note of caution though, if you 
  782.   pick an incorrect IRQ line, the following tests will not be valid.
  783.  
  784.   A window now opens showing you valid Comm port speeds. Select a speed from
  785.   this menu. Please note, don't select a speed faster than your modem can
  786.   handle. The reason for faster speeds is so communication links can also be
  787.   tested.  Use the arrow keys and press return to make your selection.
  788.            
  789.   At this point you are in the options menu. If you select "Test Modem", a
  790.   series of commands and tests will be performed. Please check to make sure
  791.   the modem is on line and running. If you select "Test Uart Hardware", only
  792.   the Uart will be tested. The modem will not be setup. This selection is
  793.   useful only if you wish to test an RS-232 line or a "dumb" modem.
  794.   Selection 3 aborts to the main menu. (NOTE: Version 5.0 includes "hot-
  795.   keys" to force the Modem Doctor to believe you are using a modem with a
  796.   microprocessor and for changing the baud rate. Read Section 4 on the menu
  797.   system for more details).       
  798.  
  799.  
  800.  
  801.  
  802.  
  803.  
  804.  
  805.  
  806.  
  807.  
  808.  
  809.                                         Page 12
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  825.  
  826.  
  827.  
  828.  
  829.   A. Test Modem/ Uart     
  830.     ---------------------
  831.       ╒[ Modem / Uart System Diagnostics]══════════════════════════════════╕
  832.       │ Comm port /IRQ in use [ ] Port = 1  Address = 3F8  IRQ = 4         │
  833.       │ Int 14 interface      [ ] Inactive                                 │
  834.       │ Uart type             [ ] 16450/8250A detected                     │
  835.       │ Baud rate selected    [ ]  2400                                    │
  836.       │ Baud Rate reg test    [ ] Confirmed correct baud rate              │
  837.       │ Modem Microprocessor  [ ] Modem Microprocessor On-Line             │
  838.       │ Modem ID Type         [ ] 9600 bps modem                           │
  839.       │ Modem Memory/Rom      [ ] Memory tests OK                          │
  840.       └────────────────────────────────────────────────────────────────────┘
  841.  
  842.   ╒[ Diagnostic Dialog]═══════════════════════════════════════════════════════╕
  843.   │                  Preliminary diagnostic checks of hardware                │
  844.   │                  -----------------------------------------                │
  845.   │                   Confirmed uart setup to proper baud rate                │
  846.   │                          Testing Modem Microprocessor                     │
  847.   │                          --------------------------                       │
  848.   │                                                                           │
  849.   │                   Modem microprocessor command bus active                 │
  850.   │                Modem ID reports a 9600 bps modem installed                │
  851.   │                    Modem microprocessor memory tests OK                   │
  852.   │                Modem microprocessor accepts setup commands                │
  853.   │                     Modem - Uart status appears correct                   │
  854.   │              Press any key to see register status and diagnosis           │
  855.   │                                                                           │
  856.   └───────────────────────────────────────────────────────────────────────────┘
  857.  
  858.   The preceding page shows you the results of a normal test with a modem. 
  859.   The first step tests the uart to modem hardware. If any connection errors
  860.   are discovered, they are reported to the screen. If no errors are
  861.   detected, the Modem Doctor will check to see what type of uart is
  862.   installed. 
  863.  
  864.   There are differences between the different types of uarts, and
  865.   the Modem Doctor uses this test to determine how to test the uart and what
  866.   registers to display to the screen. Next, the uart is set to the desired
  867.   baud rate, and the uart speed register is queried to make sure it did set
  868.   up properly. Next, the modem command bus is tested and if its compatible,
  869.   the modem ID information is queried from the modem microprocessor. The
  870.   Modem Doctor then issues a command that forces the modem to run a checksum
  871.   of its ram or rom memory. If your modem returns an OK, then the Modem
  872.   Doctor assumes your modem passed properly. If an error is returned, you
  873.   will receive an error message stating that the modem reported a rom/ram
  874.   check failure.  Finally, the modem is setup for diagnostics. Note: These
  875.   setup strings do not overwrite any non-volatile storage. 
  876.  
  877.                                         Page 13
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891.  
  892.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  893.  
  894.  
  895.  
  896.  
  897.   If your modem setup properly, all the uart registers and the First 16
  898.   Modem S registers are displayed. This display is not shown the next time
  899.   you log in a Comm port unless you press the space bar. If the modem does
  900.   not respond to certain parts of the tests, error messages are reported. 
  901.  
  902.                            Testing Modem Microprocessor
  903.                            ---------------------------- 
  904.                   Modem Microprocessor Command Mode Not Detected 
  905.                            Software Reset Initiated      
  906.            
  907.   This message is displayed if the modem did not respond the first time for
  908.   a query to its status. This could happen for any number of reasons,
  909.   including that the modem was still on-line and not in the command mode. A
  910.   soft-reset is performed, which essentially tries to wake the processor up. 
  911.  
  912.           No Response...resetting Modem Microprocessor ...attempt #1
  913.           No Response...resetting Modem Microprocessor ...attempt #2
  914.           No Response...resetting Modem Microprocessor ...attempt #3
  915.            
  916.   After 3 soft-resets, the Modem Doctor assumes that the modem is jammed and
  917.   needs a hardware reset. A hardware reset is the program equivalent of
  918.   turning the modem on and off again. This is the only way to reset some
  919.   internal modems  that get "jammed" when the computer is first turned on. 
  920.   Clearing a "jam" usually takes no more than 2 attempts.   
  921.  
  922.  
  923.                 Trying Hardware reset of the Modem Microprocessor
  924.            
  925.   The Hardware reset is performed, and again the modem microprocessor is
  926.   strobed for its status.  
  927.            
  928.                           Software Reset Initiated
  929.            
  930.   After a hardware reset, a soft reset is performed again, attempting to
  931.   wake the processor up. If this fails, the  following message is displayed; 
  932.            
  933.                 Modem Microprocessor Did Not Accept Setup Commands 
  934.                 Trying a Hardware reset of the Modem Microprocessor
  935.     
  936.  
  937.   After one more attempt at waking the modem up, the Modem Doctor assumes
  938.   that the modem is not compatible  and based on the status given it by the
  939.   Uart, it will report if the device is off or not connected.  
  940.            
  941.             WARNING..This unit does not have a Compatible Modem attached
  942.            
  943.             WARNING..The Modem Device appears to be off or not connected
  944.  
  945.                                         Page 14
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  961.  
  962.  
  963.            
  964.  
  965.  
  966.  
  967.  
  968.   The registers are now displayed for diagnostic tests, and a conclusion
  969.   based on the status of the registers is displayed. There are many reasons
  970.   why the modem/uart could fail. See the error code section for details. If
  971.   the Uart is fine, but the modem is not compatible, the program will tell
  972.   you that the Uart hardware tests ok and display this in a window to the
  973.   right of the register display.        
  974.  
  975.   Note: The reason for testing the modem command set so extensively is so
  976.   there can be no doubt about the modem accepting commands. You can force
  977.   The Modem Doctor to believe it has a modem with a compatible
  978.   microprocessor by using the hot-key Alt-F. See Section 4 about Menu system
  979.   commands.
  980.            
  981.   B. Uart Tests     
  982.   ---------------     
  983.   The uart test is performed every time either the modem or the uart test is
  984.   selected. Essentially, the uart test programs all of the registers of the
  985.   uart and looks to see that the correct values have been placed in them. If
  986.   any one of the registers fails to set, the Modem Doctor will display all
  987.   of the registers and a diagnostic message. After that, it looks to see
  988.   that an RS-232 loop is active. If not, it displays an error message saying
  989.   that the loop is either disconnected or a register in the uart is
  990.   defective. If all checks well, the type of uart chip that is installed is
  991.   returned. The type of uart chip is important for the way the Modem Doctor
  992.   will test and display the uart. Essentially there are 3 types it can
  993.   detect;      
  994.            
  995.   8250-B
  996.   This is the original uart installed in many PC's and serial port add-on
  997.   cards.      
  998.            
  999.   16450/8250-A
  1000.   This is an upgraded uart that fixes a bug in the interrupt enable register
  1001.   of the 8250-B and also tri-stated the OUT2 pin of the chip during
  1002.   loopbacks. It also adds a scratch-pad register as the highest register.
  1003.   This register is tested by the Modem Doctor but not displayed because it
  1004.   never has what you would consider as a "correct" setting. The 16450 is   
  1005.   used primarily in 80286 (AT) systems.
  1006.  
  1007.   16550
  1008.   This chip is essentially a faster 16450. However, it cannot be used in a
  1009.   FIFO buffering mode, but it does allow for a programmer to use multiple
  1010.   DMA channels and thus increase throughput on an AT or higher class
  1011.   computer system.      
  1012.  
  1013.                                         Page 15
  1014.  
  1015.  
  1016.  
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.  
  1023.  
  1024.  
  1025.  
  1026.  
  1027.  
  1028.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1029.  
  1030.  
  1031.   16550A(x)
  1032.   This chip is a faster 16450 with a built in transmit and receive FIFO
  1033.   buffer. It also allows multiple DMA channel access. You should see this
  1034.   chip in your 80386 or RISC type machine. You should also consider
  1035.   installing this chip if you do any serious communications at 9600 bps or
  1036.   higher while you are multi-tasking. Whenever a 16450,16550 or 16550AN is
  1037.   displayed, different diagnostics and/or different register mnemonics are
  1038.   displayed. The 16550AN's ability to enable and disable FIFO mode is also
  1039.   tested. In any case and with any uart, each register is checked for proper
  1040.   values. If anyone of them fail, a window will open and display a possible
  1041.   cause for the problem. 
  1042.  
  1043.                      Preliminary Diagnostic Checks of Hardware 
  1044.                      ----------------------------------------- 
  1045.                             Testing Uart Hardware Only  
  1046.                             -------------------------- 
  1047.                           A 8250-B Uart has been detected 
  1048.                         Modem - Uart Status appears correct
  1049.            
  1050.   The first time through these tests, the registers will display for
  1051.   diagnostics. Unlike the modem tests, only the uart registers are
  1052.   displayed. From then on, if the test results are correct, you will be
  1053.   prompted if you wish to have the registers displayed. If a test fails at
  1054.   any time, you will always see the registers displayed along with an        
  1055.   appropriate diagnostic message.        
  1056.            
  1057.   C. Return to main menu     
  1058.   ----------------------     
  1059.   Selecting this returns you to the main menu, this allows you to change an
  1060.   entry made in error without having to wait for the diagnostic checks to
  1061.   fail. In any event, after any of these tests have been run, you will then
  1062.   enter the Modem Doctor's Main Menu.
  1063.  
  1064.  
  1065.   Section 4.0 The Main Menu
  1066.   -------------------------
  1067.   The main menu consists of a sliding bar from which you make your selections. 
  1068.   Using the arrow keys you slide left or right. Pressing ENTER selects a 
  1069.   feature. If the feature has a pulldown window, you use the up or down arrows 
  1070.   to navigate, and then ENTER to select that feature.
  1071.  
  1072.   4.01 Hot-Key selection 
  1073.   ----------------------  
  1074.   In addition to these menu selections, there are three hot-keys that are
  1075.   active at nearly all times in the Modem Doctor. The ALT-B combination can
  1076.   be used to change the baud rate from the main menu, from inside pulldowns
  1077.   and Manual test section. A window will pop-up and you can pick your
  1078.   desired serial port speed. This can save a lot of time when you wish to
  1079.   test a modem at various speeds. Using the Setup / Test Modem & Uart
  1080.  
  1081.                                         Page 16
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1097.  
  1098.  
  1099.   mode is the safest way (because it verifies the modem microprocessor
  1100.   accepts commands properly at the selected speed), however if you use the
  1101.   ALT-B command, you will take a short-cut that can help you when testing
  1102.   your modem. 
  1103.          
  1104.   The next hot-key is ALT-F, or FORCE Micro on-line. Actually, there is no
  1105.   "force" involved. By pressing this key, you make the Modem Doctor believe
  1106.   there is a AT Instruction set compatible modem attached. This can be handy
  1107.   for troubleshooting a modem that doesn't work properly at certain speeds
  1108.   or under certain conditions.  The Setup Test Modem & Uart section will not
  1109.   allow any AT Instruction set Carrier tests on modems that it cannot
  1110.   properly setup. The ALT-F combination bypasses this and allows such
  1111.   testing. When you press ALT-F, you will notice the Status Bar will say
  1112.   that a modem microprocessor is on-line.  Version 4.0 now allows this key
  1113.   to be operated as a toggle between on-line and off-line. This key is
  1114.   active inside of any menu at any time.
  1115.  
  1116.   Another hot-key is ALT-T. This is new with Modem Doctor 5.0. It allows you to 
  1117.   toggle how Modem Doctor treats the transmission of characters. Most times, 
  1118.   interrupt driven transmissions are used because they are fast, waste no CPU 
  1119.   time looping, and give the best throughput. However, some early 8250 uarts 
  1120.   cannot handle interrupt-driven transmits without errors. When you start Modem 
  1121.   Doctor, transmit-driven interrupts are enabled. If you experience errors 
  1122.   during tests, try disabling this feature. If your errors go away, you either 
  1123.   have a uart that cannot handle interrupt-driven transmit routines, or your 
  1124.   system is too slow to process and support this feature.
  1125.  
  1126.   The last hot-key is the ALT-H for help. This key will give you varying
  1127.   levels of help. From the main menu, it gives a terse help just like
  1128.   pressing the down arrow key does. Inside of a pulldown, it gives you
  1129.   expanded help, just as selecting the appropriate help section of the
  1130.   pulldown also does.
  1131.  
  1132.   4.1 Login In Comm ports     
  1133.   -----------------------     
  1134.   When you select this menu, you are offered these choices                   
  1135.  
  1136.   ╔[  Comm Port Login  ]═══════════╗
  1137.   ║ Let me Auto Detect COMM Ports  ║ <- Searches for all Comm ports
  1138.   ║ You Manually Enter COMM Ports  ║+<- You enter port addresses
  1139.   ║ Help with Auto login Commands  ║ <- Detailed help or ALT-H
  1140.   ║      Return To Main Menu       ║
  1141.   ╚════════════════════════════════╝    + registered version only
  1142.  
  1143.   Option 1 repeats what the Modem Doctor does when you first begin to run
  1144.   the program. Option 2 allows you to enter a "non" standard port address
  1145.   and assign one of the two Interrupt lines to use with the Uart. Option 3 
  1146.   gives you an expanded, on-line help description of these tests. Option 4
  1147.   returns to the main menu.      
  1148.  
  1149.                                         Page 17
  1150.  
  1151.  
  1152.  
  1153.  
  1154.  
  1155.  
  1156.  
  1157.  
  1158.  
  1159.  
  1160.  
  1161.  
  1162.  
  1163.  
  1164.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1165.  
  1166.  
  1167.   4.11 What do IRQ's and COMM Ports do ? 
  1168.   ---------------------------------------      
  1169.   Each time a character is received by a modem, it has to get the attention
  1170.   of the computer by raising an interrupt request line (IRQ). PC-type
  1171.   computers have 8 of these lines, AT-type (ISA bus), MCA and EISA computers
  1172.   have at least 16. The 8259 Interrupt controller chip handles these
  1173.   requests for attention. By design, COM1 uses IRQ4 and COM2 uses IRQ3. IRQ7
  1174.   is assigned to a printer, IRQ5 to the Hard Drives. It is possible to use
  1175.   COM1 and COM2 or COM3 and COM4 at the same  time, but you cannot use COM1
  1176.   and COM3 or COM2 and COM4 at the same time because these share IRQ lines.
  1177.   If you needed to use 3 or more COMM ports at the same time, you would need
  1178.   to use another IRQ line. The best bets are IRQ7 and IRQ5, because they may
  1179.   be available when you need them. IRQ7 is really only needed by programs
  1180.   that use printer interrupts (background type spoolers for example). IRQ5
  1181.   is used by fixed disks. It may or may not cause a conflict if you use this
  1182.   IRQ line with your modem. PC type computers are quite limited because they
  1183.   only have 8 IRQ lines and most are reserved. AT type computers have 16 IRQ
  1184.   lines. 
  1185.  
  1186.   A good tip would be to consult your hardware manual to find out if you can
  1187.   or can't use these other IRQ's. However, if you do not need to use 3 or
  1188.   more COMM ports at one time, then it is best to stick to the reserved IRQ4
  1189.   and IRQ3 for all of your activity. 
  1190.            
  1191.            
  1192.   4.12 Port assignments and their meaning 
  1193.   ---------------------------------------  
  1194.   Like IRQ lines, certain port addresses were reserved to work with the PC's
  1195.   external hardware devices. Two of these were reserved by all
  1196.   manufacturers; 3F8 (HEX) and 2F8 (HEX).  Although only two COMM ports were
  1197.   supported by the original ROM-BIOS, there are two additional port memory
  1198.   locations available for use by MS-DOS and PC-DOS applications. These
  1199.   reserved port addresses are 3E8 (HEX) and 2E8 (HEX). Most internal modems
  1200.   come with these 4 ports as selections along with several IRQ line
  1201.   combinations.  There is a "quirk" in the way that the ROM-BIOS logs in
  1202.   these ports. If the Power on self-tests (POST) do not find a 3F8 serial
  1203.   port but they do find a 2F8, then the 2F8 serial port is mistakenly 
  1204.   assigned to COM1. To add to this, the reserved IRQ line for COM1 is IRQ4.
  1205.   But this serial Port of 2F8 is using COM2's  address, which means it needs
  1206.   IRQ3 instead of IRQ4. So, if you are trying to use Basic, Pascal, or DOS
  1207.   for COM1 operations, the serial port or modem will not be able to work.
  1208.   The general rule thus is "No COM1 without COM2". 
  1209.  
  1210.   The Modem Doctor when it is run will detect this log-in problem and
  1211.   display an "alert-bar" with a message to you that points out this error.
  1212.   You can then elect to correct this for the purposes of testing. Remember
  1213.   though, you can only fix these addresses permanently by changing the
  1214.   settings on your serial port or internal modem. You can run Modem Doctor
  1215.   with the /X switch to fix this problem at boot time until you do change
  1216.  
  1217.                                         Page 18
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1233.  
  1234.  
  1235.   the address settings permanently. The addresses for PC's are standardized
  1236.   in order for communication programs to properly work. As stated above, the
  1237.   industry standards are;      
  1238.           
  1239.            COMM 1  3F8   COMM 2  2F8    COMM 3  3E8    COMM 4 2E8
  1240.            IRQ4          IRQ3           IRQ4           IRQ3      
  1241.  
  1242.            
  1243.            COMM 5  3F8   COMM 6  2F8    COMM 7  3E8    COMM 8  2E8
  1244.            IRQ7          IRQ7           IRQ5           IRQ5      
  1245.            
  1246.            
  1247.   The port addresses for serial ports (1-4) are held in a reserved area of
  1248.   memory. The "base port" of each of these uarts is saved in a distinct
  1249.   area. When you first start the Modem Doctor, the program checks these
  1250.   locations to see if there are any Comm ports already logged in by Dos. If
  1251.   not, a search is conducted for the PC's default Comm 1 and Comm 2 port
  1252.   values and these are logged in. Next, a search is performed for the other
  1253.   industry standard Comm ports. Some PC's already log these in, however
  1254.   IBM-PC's and those that mimic exactly their ROM-BIOS routines do not log
  1255.   in a COMM 3 or a COMM 4. The Modem doctor does log these in, and as a side
  1256.   benefit, these stay logged in until the next warm or cold boot is 
  1257.   performed on your computer. Why would Dos not log in a port? Well, some
  1258.   multi-tasking programs overwrite this area to prevent "swapping" of
  1259.   communication programs and it is possible that they might not be properly
  1260.   restored on exit. Next, a search is made for the custom comm ports 5-8.
  1261.   These ports are not held in DOS at all, but are held in program memory by
  1262.   the Modem Doctor after a user logs the port in using the Manual log-in
  1263.   mode (see below). If one of these ports is found, it will be added to the
  1264.   comm port option menu for you to use when you test the modem.  The reason
  1265.   for the custom ports is to help users who are using non-standard interrupt
  1266.   lines (IRQ7,IRQ5). Unlike the Dos logged-in ports, these assignments
  1267.   disappear when the Modem Doctor is exited. The Modem Doctor follows the
  1268.   accepted arraignment of these comm Port /IRQ line pairings. However, you
  1269.   do have full control at all times over all port addresses and IRQ
  1270.   assignments and can change them using the Manual Login mode.  
  1271.  
  1272.   As far as the 2 Options presented by the Login Mode, option 2 is the only 
  1273.   real option available. Please use it with caution. The only need for this
  1274.   option is for logging in a comm port that does not use any of the listed
  1275.   industry standards as its base port address or IRQ line assignments.
  1276.   Consult your serial port or Modem's user manual to make sure you enter the
  1277.   exact port address and select the correct Interrupt line to use with it.
  1278.   Otherwise the Modem Doctor will not recognize or be able to test any
  1279.   device hooked to this port. Protection is included in this routine to keep
  1280.   someone from accidentally entering a port that is used by the system
  1281.   board, display adapters, or fixed disk adaptor. Entering any of these
  1282.   values, or an error, will result in the display;
  1283.  
  1284.  
  1285.                                         Page 19
  1286.  
  1287.  
  1288.  
  1289.  
  1290.  
  1291.  
  1292.  
  1293.  
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.  
  1300.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1301.  
  1302.  
  1303.                    "WARNING...RESERVED port...RETRY ENTRY"      
  1304.  
  1305.   After running option 1 or 2 , you must tell the Modem Doctor which comm
  1306.   port you wish to use so that testing can begin. Pressing the ESCAPE key or
  1307.   pressing a left or right arrow key works the same as Option # 3 and
  1308.   returns you to the main menu.              
  1309.  
  1310.  
  1311.  
  1312.  
  1313.  
  1314.  
  1315.  
  1316.  
  1317.  
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.  
  1325.  
  1326.  
  1327.  
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.  
  1343.  
  1344.  
  1345.  
  1346.  
  1347.  
  1348.  
  1349.  
  1350.  
  1351.  
  1352.  
  1353.                                         Page 20
  1354.  
  1355.  
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1369.  
  1370.  
  1371.  
  1372.   4.13 Testing defective Ports 
  1373.   ----------------------------  
  1374.   Whenever the Modem Doctor checks to see if a port is working properly, it
  1375.   checks the status of several registers. If a uart appears "dead", the
  1376.   Modem Doctor will tell you that the port was not "found". You can use the
  1377.   Manual mode and override this determination. This allows you to test a
  1378.   defective port to find out what is wrong. If you tell the Modem Doctor for
  1379.   example to use serial Port 2F8 as COM2  and you do not have a COM2, the
  1380.   message "COM2 not Found" will be returned with an option "Override [Y/N]
  1381.   ?". Answering "Y" will force the login of this port.  Certainly there is
  1382.   no benefit to testing a non-existent port, but a port that is defective
  1383.   may not be logged-in. So, you now have the option to test this defective
  1384.   port hardware to pinpoint a problem. Combined with the register display
  1385.   and diagnostics, you will most likely be able to pin-point any uart
  1386.   problem quickly and easily. 
  1387.  
  1388.   4.2 Regs     
  1389.   -------------      
  1390.  
  1391.   ╔[  Register Tests  ]══════════════╗
  1392.   ║ Quick Uart Register Diagnostics  ║ <- Displays all registers
  1393.   ║ DTR/DSR  RTS/CTS echo test       ║ <- Tests handshake lines
  1394.   ║ Dynamic  RTS/CTS handshake test  ║+<-|Handshakes under simulated
  1395.   ║ Dynamic Xon/Xoff handshake test  ║+<-|on-line conditions.
  1396.   ║ Display any 10 S-registers       ║ <- Display S-registers
  1397.   ║ Help and Info on these tests     ║ <- Help or ALT-H
  1398.   ║       Return To Main Menu        ║
  1399.   ╚══════════════════════════════════╝
  1400.                                                + registered version only
  1401.   The register display section can be an invaluable diagnostic tool. What
  1402.   this does is "poll" all of the status registers of the uart, and the
  1403.   interrupt controller to tell you exactly what is going on.  When you use
  1404.   the setup mode, the Modem Doctor checks all of these registers for correct 
  1405.   information. If something wrong is discovered, a warning is displayed on
  1406.   the screen telling you what the Modem Doctor believes is wrong. Many
  1407.   different error conditions are checked, see the error code section for a
  1408.   listing. Each register contains a Mnemonic for each one of the data bits.  
  1409.   Bits that are a logic low ( = 0) are displayed in low intensity, those
  1410.   that are a logic high (= 1) are displayed in high intensity. On a color
  1411.   monitor, this is easy to see. On a Mono Monitor, make sure you have the 
  1412.   brightness and contrast controls properly adjusted to see the difference
  1413.   between the two status conditions.  (Note: Version 4 allows you to pick
  1414.   your own custom colors, however, it will still alternate between high
  1415.   intensity and low intensity shades of the colors you select for the uart
  1416.   register displays).
  1417.  
  1418.  
  1419.  
  1420.  
  1421.                                         Page 21
  1422.  
  1423.  
  1424.  
  1425.  
  1426.  
  1427.  
  1428.  
  1429.  
  1430.  
  1431.  
  1432.  
  1433.  
  1434.  
  1435.  
  1436.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1437.  
  1438.  
  1439.  
  1440.   -[ Line Control Register ]----------      
  1441.   |  DLB STB STP EPS PEN STB WS1 WS0  |     
  1442.   ------------------------------------      
  1443.   This register controls many of the setup characteristics of your uart and
  1444.   how it behaves to your PC. This register is responsible for setting baud
  1445.   rate, setting break code transmission, parity, and the length of the
  1446.   serial stream  word. 
  1447.            
  1448.   DLB    Divisor Latch          Used to access the baud rate registers.      
  1449.                                 Should be low for all displays.
  1450.            
  1451.   STB    Set Break              If high, the modem transmits a
  1452.                                 break signal, should be low normally.      
  1453.  
  1454.   STP    Stick Parity           Should be low normally    
  1455.   EPS    Even Parity select     High = even parity..should be low normally   
  1456.   PEN    Parity Enable          Enable parity checks, should be low normally
  1457.  
  1458.  
  1459.  
  1460.   STB    Stop Bits              Number of stop bits, should be low normally  
  1461.                                 to indicate 1 stop bit character only.
  1462.  
  1463.   WS1    Word Length Select 1     
  1464.   WS0    Word Length Select 0   These two bits are used to determine the     
  1465.                                 serial data word length. Both should be high 
  1466.                                 normally to indicate a length of 8 bits.
  1467.            
  1468.   -[ Line Status Register ]----------- 
  1469.   |      TSE THE BI  FE  PE  OE  DR   |      
  1470.    ___________________________________      
  1471.            
  1472.   The line status register reports error conditions that might have occurred
  1473.   between the PC and the Uart.      
  1474.  
  1475.   TSE    TX Shift Register      A high indicates that all characters         
  1476.                                 sent to the Uart were transmitted.  Should
  1477.                                 be High Normally.      
  1478.  
  1479.   THE    TX Holding Register    A high indicates that the Uart can now       
  1480.          Empty                  accept a new character from the PC. Should 
  1481.                                 be high normally. 
  1482.  
  1483.   BI     Break Interrupt        A high indicates that a break signal was     
  1484.                                 received. Should be low normally.      
  1485.  
  1486.   FE     Framing Error          A high indicates that a serial data train 
  1487.                                 did not have a proper stop bit. Should be
  1488.  
  1489.                                         Page 22
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1505.  
  1506.  
  1507.                                 low normally.   
  1508.  
  1509.   PE     Parity Error           A high indicates that the received serial    
  1510.                                 data's parity did not match what the uart
  1511.                                 was programmed to receive. Should be low     
  1512.                                 normally.     
  1513.  
  1514.   OE     Overrun Error          A high indicates that a character in the     
  1515.                                 receive buffer was not read by the PC in     
  1516.                                 time, and another character overwrote and
  1517.                                 destroyed it. Should be low normally. 
  1518.  
  1519.   DR     Data Ready             A High indicates that a character has been   
  1520.                                 received and is ready to be read by  the PC  
  1521.                                 from the receiver buffer. Should be low
  1522.                                 normally for these test, but can vary while  
  1523.                                 data is coming in from the modem. 
  1524.  
  1525.  
  1526.   -[ Modem Control Register ]---------
  1527.   |              LP  OT2 OT1 RTS DTR  |     
  1528.   ------------------------------------       
  1529.            
  1530.   The Modem Control register handles all of the interfacing between the    
  1531.   Uart and the modem. Only 5 signals are needed for this level of control.   
  1532.    
  1533.            
  1534.   LP     LOOP                   A high indicates that the loopback digital   
  1535.                                 diagnostic has been activated. This feature  
  1536.                                 only works with 8250 uarts or those that are 
  1537.                                 100% compatible. This is used in the digital 
  1538.                                 loopback test. 
  1539.  
  1540.   OT2    OUT 2                  A high enables the uart to generate
  1541.                                 interrupts. A low disables interrupts. This
  1542.                                 should always be high for testing purposes.  
  1543.      
  1544.   OT1    OUT 1                  On 100% compatible modems, a high on this 
  1545.                                 pin will perform a hardware reset of the
  1546.                                 modem in some compatible designs. Normally
  1547.                                 this is a low.
  1548.  
  1549.   RTS    Request to Send        A Handshaking signal that is used by some    
  1550.                                 modems to enable data transfer between the
  1551.                                 modem and the Uart. Should be high for
  1552.                                 testing purposes.
  1553.  
  1554.   DTR    Data Terminal Ready    A Handshaking signal that is used by some    
  1555.                                 modems to enable data transfer between the
  1556.  
  1557.                                         Page 23
  1558.  
  1559.  
  1560.  
  1561.  
  1562.  
  1563.  
  1564.  
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1573.  
  1574.  
  1575.                                 modem and the uart. Should be high for       
  1576.                                 testing purposes.
  1577.  
  1578.  
  1579.  
  1580.  
  1581.   -[ Modem Status Register ]----------      
  1582.   |  RLS RI  DSR CTS DRD TER DDR DCS  |     
  1583.   ------------------------------------      
  1584.   The Modem Status Register returns the status of the control signals sent
  1585.   by the modem to the Uart.      
  1586.            
  1587.   RLS    Received Line Detect   A high indicates that a carrier has been     
  1588.                                 received by the modem. When the Analog
  1589.                                 tests are run, this should be high. If it is 
  1590.                                 not, it is still possible that the modem
  1591.                                 is ok, however the cable from the modem to   
  1592.                                 the uart (for externals only) might not have
  1593.                                 a complete circuit due to faulty wiring of   
  1594.                                 the RS-232 cable. This signal is very
  1595.                                 important for some communications programs   
  1596.                                 to operate properly.      
  1597.  
  1598.  
  1599.  
  1600.   RI     Ring Indicator         A high indicates that the modem detected a   
  1601.                                 ringing signal on the phone line. 
  1602.  
  1603.   DSR    Data Set Ready         This is part of the DTR/DSR Handshaking pair 
  1604.                                 that is used by some modems to control the   
  1605.                                 flow of data. Normally be a high. 
  1606.  
  1607.   CTS    Clear to Send          This is part of the RTS/CTS Handshaking pair 
  1608.                                 that is used by some modems to control the
  1609.                                 flow of data. Should normally be a high.
  1610.  
  1611.   DRD    Delta Received         Line Signal Detect. A high indicates that 
  1612.                                 the Received Line Signal has changed state.
  1613.                                 Some communications programs use this also 
  1614.                                 as an indication that a carrier was detected
  1615.                                 by the modem. 
  1616.   TER    Trailing Edge
  1617.            Indicator            A high indicates that the Ring Indicator     
  1618.                                 changed state. Some communications programs  
  1619.                                 use this as an indication that the phone as  
  1620.                                 rung.      
  1621.  
  1622.   DDR    Delta Data Set Ready   Indicates that the DSR signal has changed    
  1623.                                 state.      
  1624.  
  1625.                                         Page 24
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1641.  
  1642.  
  1643.   DCS    Delta Clear to Send    Indicates that the CTS signal has changed    
  1644.                                 state. 
  1645.            
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.   If a 8250-B / 16450 or 8250A Uart was detected, the following is
  1652.   displayed;      
  1653.          
  1654.   -[ Interrupt ID Register ]----------
  1655.   |                      ID1 ID0 ITP  |     
  1656.   ------------------------------------       
  1657.            
  1658.   The Interrupt ID Register is used to tell the CPU what kind of interrupt
  1659.   occurred.      
  1660.  
  1661.   ID0    Interrupt Bit 2     
  1662.   ID1    Interrupt Bit 1        These two signals are a binary code which 
  1663.                                 can be read by the CPU to tell what kind of  
  1664.                                 interrupt occurred. Both bits high indicates
  1665.                                 an error occurred or a break interrupt was
  1666.                                 received.  Bit 2 high and Bit 1 low
  1667.                                 indicates that data is ready to be read by
  1668.                                 the CPU. Bit 1 high and bit 2 low indicates
  1669.                                 that a ring signal or carrier signal was
  1670.                                 received. For testing purposes, only the
  1671.                                 Data ready mode is used. 
  1672.  
  1673.   ITP    Interrupt Pending      A Low indicates that an interrupt has
  1674.                                 occurred. For testing purposes, this should
  1675.                                 always be high if data was successfully read
  1676.                                 by the Modem Doctor. If it is not, then an
  1677.                                 interrupt did occur but the CPU did not
  1678.                                 respond. Suspect a problem with an interrupt
  1679.                                 controller chip or the uart interrupt
  1680.                                 generating capability. If a 16550 or
  1681.                                 16550A(x) chip was detected, the register
  1682.                                 selection uses the enhanced register
  1683.                                 display.             
  1684.            
  1685.  
  1686.   If a 16550A(x) was detected, the appearance of the Interrupt ID register
  1687.   changes and the following is displayed;
  1688.  
  1689.   -[ Interrupt ID Register ]----------
  1690.   | FEM FEL          ID2 ID1 ID0 ITP  |     
  1691.   ------------------------------------   
  1692.  
  1693.                                         Page 25
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1709.  
  1710.  
  1711.   FEM   FIFO Enable MSB         This is the most significant bit of the FIFO
  1712.                                 register. It should be high on both the
  1713.                                 16550 and 16550AN if the FIFO buffering is
  1714.                                 enabled. Normal Modem Doctor status shows
  1715.                                 this as a logic low (unless testing is
  1716.                                 performed).  
  1717.  
  1718.   FEL   FIFO Enable LSB         This is the least significant bit of the
  1719.                                 FIFO Register. It should be a high on the
  1720.                                 16550A(x) only! The 16550 always displays
  1721.                                 this bit low. Again, the normal Modem Doctor
  1722.                                 status will show this as a logic low (unless
  1723.                                 testing is performed).
  1724.  
  1725.   ID2   FIFO Timeout            This signal is raise high by a 16550A(x) to
  1726.                                 indicate that it is holding characters for
  1727.                                 the CPU to read, but it is less than what
  1728.                                 the CPU has requested to be interrupted for.
  1729.                                 The FIFO buffer can be as deep as 14
  1730.                                 characters. If only 8 have come in, the CPU
  1731.                                 will not be interrupted. The 16550A(x) is
  1732.                                 programmed to interrupt after a period of
  1733.                                 time has gone by during which no characters
  1734.                                 were received in order to force the CPU to
  1735.                                 get what it is currently storing. Normal
  1736.                                 operation should keep this line low, if it
  1737.                                 is high at any time there is a problem with
  1738.                                 the uart.  
  1739.  
  1740.            
  1741.   -[ Interrupt Enable Register ]------      
  1742.   |                  ESI ELI ETI ERI  |     
  1743.   ------------------------------------      
  1744.            
  1745.   The Interrupt Enable register is programmed to allow certain types of    
  1746.   interrupts to occur.      
  1747.  
  1748.   ESI    Enable Status          A high causes the uart to generate an
  1749.                                 interrupt whenever RI or RSD signals in the
  1750.                                 Modem Status register go high. Should be low
  1751.                                 for testing.
  1752.  
  1753.   ELI    Enable Line            A high causes the uart to generate an 
  1754.                                 Interrupt whenever an error or break
  1755.                                 interrupt is detected in the Line Status
  1756.                                 Register. Should be low for testing.
  1757.  
  1758.   ETI    Enable Transmitter     A high causes the uart to generate a holding 
  1759.                                 register interrupt whenever the THE signal 
  1760.  
  1761.                                         Page 26
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.  
  1772.  
  1773.  
  1774.  
  1775.  
  1776.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1777.  
  1778.  
  1779.                                 of the empty interrupt line status register
  1780.                                 goes high. Should be low for testing.        
  1781.                                 
  1782.  
  1783.   ERI    Enable Receive Data    A high causes the uart to generate an ready  
  1784.                                 interrupt whenever data is ready to be read
  1785.                                 by the CPU. The DR line of the line status 
  1786.                                 register going to a high state generates
  1787.                                 this  condition. This signal should be high
  1788.                                 for testing purposes, since it is the only
  1789.                                 interrupt needed by the Modem Doctor.  
  1790.  
  1791.  
  1792.   -[ Interrupt Mask Register ]--------      
  1793.   |  IQ7 IQ6 IQ5 IQ4 IQ3 IQ2 IQ1 IQ0  |     
  1794.   ------------------------------------      
  1795.   The interrupt mask register is contained on the 8259 priority interrupt
  1796.   controller on your computer's motherboard. Each one of these hardware
  1797.   interrupts corresponds to an external device.      
  1798.  
  1799.   IQ7   Printer Interrupt (can be used by Custom COM5 or COM6)
  1800.   IQ6   Floppy Disk Interrupt     
  1801.   IQ5   Hard Drive interrupt (can be used by Custom COM7 or COM8)
  1802.   IQ4   COM1 Interrupt (also COM3)     
  1803.   IQ3   COM2 Interrupt (also COM4)     
  1804.   IQ2   reserved by IBM (Gateway to second 8259 on AT's)     
  1805.   IQ1   Keyboard Interrupt     
  1806.   IQ0   Timer Interrupt      
  1807.            
  1808.  
  1809.  
  1810.   Under Normal Conditions, IQ0,IQ1 and IQ6 should be lit, along with IQ4 if
  1811.   testing COM1 (or COM3)  or IQ3 if testing COM2 (or COM4). In addition,
  1812.   other lines could be lit depending on your computer. The only line the
  1813.   Modem Doctor looks for is the IQ4 or IQ3 lines (depending on which serial
  1814.   port you are testing).   
  1815.  
  1816.  
  1817.   4.30 Handshaking tests
  1818.   ----------------------
  1819.   Just like a handshake between friends, the Modem Doctor tests to see that
  1820.   your computer uart and the modem are properly exchanging handshaking for
  1821.   data communication. There are 4 tests for proper operation. Two of them
  1822.   are static (meaning that the control lines between the computer and modem
  1823.   are raised and lowered), and two of them are dynamic (meaning that the
  1824.   modem is placed in a self-connect mode and data is sent to the modem).
  1825.  
  1826.   Static test results can vary modem to modem. Some modems echo control line 
  1827.   toggles...in other words, if DTR goes low, so will DSR. Other modems do not. 
  1828.  
  1829.                                         Page 27
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1845.  
  1846.  
  1847.   So, it would be considered normal for a modem *not* to pass this particular 
  1848.   test. However, if you wish to test a cable, and at the end you place a 
  1849.   loopback plug, then the static echo test should pass. Otherwise, your cable 
  1850.   is wired incorrectly!
  1851.  
  1852.   The static RTS/CTS tests are conducted the same way, however this
  1853.   handshake pair is important for high-speed modem users. Again, working 
  1854.   through a modem, you will see a failure (unless using the modem for 
  1855.   Synchronous Communications, something most users never do). However, with a 
  1856.   loopback plug, you should see the static test pass. The static tests above 
  1857.   are designed to show that your cabling to the modem is proper, when verified 
  1858.   with a loopback plug. However, these tests cannot verify if your modem 
  1859.   microprocessor will act properly on this handshaking information. 
  1860.  
  1861.   The dynamic tests force your modem to self-connect. Next the RTS (or DTR) 
  1862.   lines are dropped (depending on which test is run). Then 20 characters are 
  1863.   sent to the modem. If the modem is properly using handshaking, no characters 
  1864.   will be sent back to the computer. If any characters are received, then your 
  1865.   modem ignored the handshake request. In most cases, if the static tests 
  1866.   passed but the dynamic failed, it means your modem needs to be setup for 
  1867.   testing. 
  1868.  
  1869.   The Modem Doctor offers you the choice of programming your modem to test
  1870.   its ability to handshake. Using this mode requires that you have selected
  1871.   the proper modem driver from the Carrier mode before hand, otherwise
  1872.   incorrect commands will be sent to your modem. If you know you have the
  1873.   right driver, then you can go ahead and see if your modem is set properly
  1874.   or not.
  1875.  
  1876.   None of the commands sent to the modem are permanently stored in the
  1877.   modem. If the Modem Doctor enables handshaking and it works, but your
  1878.   setup in the modem does not work, then you have to reprogram the modem
  1879.   yourself. You can use the Interactive terminal mode to do this if you wish
  1880.   without leaving the Modem Doctor. Also, in order for these tests to be valid
  1881.   you must be using a modem that supports RTS/CTS and XON/XOFF handshaking 
  1882.   modes of operation.
  1883.  
  1884.  
  1885.   4.30A S-Register Displays
  1886.   -------------------------
  1887.   The most important S-registers are the first 16. These determine many of the 
  1888.   abilities and options that your modem can use during communication sessions. 
  1889.   However, today's high-speed modems have many more registers, in fact some 
  1890.   have up to 200! After the first 16, no one really follows any sort of "plan", 
  1891.   each modem manufacturer is pretty free to do what they wish. From a 
  1892.   diagnostic standpoint, this is a nightmare senario. Even with the same 
  1893.   manufacturer, different ROM versions change how these registers are used.
  1894.  
  1895.   The "compromise" position is allow for the viewing of S-registers in groups 
  1896.  
  1897.                                         Page 28
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.  
  1912.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1913.  
  1914.  
  1915.   of 10. You pick the starting register, and the next 10 are displayed. Values 
  1916.   of 0 (appearing slowly) usually indicate that the selected register doesn't 
  1917.   exist. As with all Modem Doctor routines, you cannot change any of these S-
  1918.   register settings, unless you go into the Interactive Mode and use the AT 
  1919.   commands that allow you to change register settings. 
  1920.            
  1921.   4.31 Carrier Tests     
  1922.   -----------------  
  1923.   ╔[  Setup  ]═════════════╗
  1924.   ║ Run the Carrier Tests  ║ <- Simulate on-line tests
  1925.   ║ Select Modem Commands  ║ <- Pick a modem driver
  1926.   ║ Help With Carrier Test ║ <- Help
  1927.   ║  Return to Main Menu   ║
  1928.   ╚════════════════════════╝
  1929.  
  1930.  
  1931.   The carrier test section is used to test your modem's ability to detect a
  1932.   carrier, demodulate signals on the originate frequency and answer
  1933.   frequency, and to properly control the RLS (Received Line Signal) and CD
  1934.   (carrier detect) modem status/control lines. All of these are essential
  1935.   elements for good data communication.  When you select carrier tests, a
  1936.   pulldown menu is displayed. Option 1 prompts you to run the carrier tests.
  1937.   Option 2 offers you the chance to select a custom modem driver. Option 3
  1938.   allows you to return to the main menu (pressing ESCAPE or a left/right
  1939.   arrow key also does the same thing as option 3).  
  1940.            
  1941.   4.31 Modem Driver Modules    
  1942.   --------------------------  
  1943.   Although your AT instruction set modem is based on a defacto standard
  1944.   developed by Hayes, there are several "supersets" of this instruction set
  1945.   for various modems. Currently, the  Modem Doctor supports 9 different
  1946.   software Modem Drivers for testing; Generic Compatible, &T0 (CCITT V.54 test 
  1947.   sequence) instruction set, Hayes V9600, Hayes Ultra 9600, Courier HST/V.32, 
  1948.   ZyXEL 1496, Practical Peripherals, Intel, and Sierra Semiconductor modems. 
  1949.  
  1950.  
  1951.   When the Modem Doctor is running the setup mode, it queries the 
  1952.   microprocessor for its type identification. Based on this information, a 
  1953.   modem driver is selected for use. Basically, all 2400 bps and lower modems 
  1954.   are assigned the Generic Driver, and all supported 9600 and higher modems are 
  1955.   assigned their proper ID, based on the information your modem returns via its 
  1956.   ROM code. If Modem Doctor knows its a high-speed modem but can't determine 
  1957.   the type, the Courier HST/V.32 driver is assigned by default. The &T0 
  1958.   instruction set modems, (those that use the CCITT V.54 test sequence), are 
  1959.   tested in a different manner with a different set of instructions. Previous 
  1960.   versions of the Modem Doctor would automatically switch to the &T0 
  1961.   instruction set if the modem was a 2400 bps modem and if it failed to 
  1962.   properly detect a carrier during testing. 
  1963.  
  1964.  
  1965.                                         Page 29
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  1981.  
  1982.  
  1983.   This function is still built into the Modem Doctor, but you can 
  1984.   optionally select the &T0 driver yourself before beginning your testing in
  1985.   order to speed things up. Auto-selection added about 10 seconds a pass
  1986.   that can now be eliminated.  If you desire to select the &T0 set for your
  1987.   modem instead of letting  the Modem Doctor do it for you. NOTE: Don't 
  1988.   select this instruction set unless you know for sure that your modem is
  1989.   100% instruction set compatible with the Hayes 2400 or 2400B. Hayes 1200
  1990.   bps and lower, and almost all other 2400 bps and lower modems use the
  1991.   Generic Driver. You will find that 99% of all modems will work properly
  1992.   with this  assignment, in fact, if you disable all data compression and
  1993.   Fixed link assignments from any high speed modem (including 16800+'s), the 
  1994.   generic driver will test these modems properly also! This allows people with 
  1995.   high-speed modems that are not supported currently to use the Modem Doctor 
  1996.   for testing. If you have a high-speed modem that is not supported, you can 
  1997.   use a Combination of the Manual mode and the Generic Modem Driver to test 
  1998.   these modems also.  
  1999.  
  2000.  
  2001.   All of the modem drivers used by the Modem Doctor are built into the
  2002.   program, however version 5.0, like version 4.0x, has the ability to recognize 
  2003.   an external driver file. If the Modem Doctor finds and external driver file 
  2004.   when it starts, it uses those command instead of the built-in drivers. The 
  2005.   format for drivers has changed between version 4.0x and 5.0, and any future 
  2006.   drivers will be released in both formats for users of both versions of Modem 
  2007.   Doctor.
  2008.  
  2009.   What purpose is there in external drivers? Well, first off, if a new modem
  2010.   command set is adopted, or a bug is discovered in one of the built-in
  2011.   modems, you will be able to receive a free driver file from any bbs or by
  2012.   mail. This means that your copy of the Modem Doctor can stay current for
  2013.   some time to come. The second reason for external drivers is to allow you,
  2014.   if you desire, to have us custom design a modem driver for a particular
  2015.   modem. These drivers would be designed at a modest charge and would be for
  2016.   your use only. In any case, external drivers insure your investment in the
  2017.   Modem Doctor.
  2018.  
  2019.   4.32 Types of Carrier Tests  
  2020.   -----------------------------     
  2021.   The carrier tests are designed to test your modem under actual use
  2022.   conditions (minus a telephone line). Your modem uses two different
  2023.   frequency bands for communication. These are the originate and answer
  2024.   frequencies. AT Compatible modems can select these under command of the
  2025.   Modem Doctor via the appropriate Modem Driver module. So called "Dumb"
  2026.   Modems have front-panel switches that you must use to properly test the
  2027.   modem. The Modem Doctor supports both types of tests, one of which is
  2028.   automatically selected by the Modem Doctor depending on the hardware it
  2029.   detects.  
  2030.            
  2031.   4.33 AT Instruction Set Tests 
  2032.  
  2033.                                         Page 30
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2049.  
  2050.  
  2051.   -----------------------------     
  2052.   If you selected the Test Modem/Uart option from the setup menu and a Modem
  2053.   with a compatible microprocessor was detected, or if you have forced the
  2054.   Modem Doctor to use the AT instruction set tests via the hot-key ALT-F,
  2055.   the Modem Doctor will test the originate and answer frequencies of your
  2056.   modem automatically. Before running this test, make sure you have
  2057.   disconnected the modem from the telephone line, because the modem will go 
  2058.   off-hook and sometimes the  dial-tone will interfere with testing. If you
  2059.   press ESCAPE in this menu, you return to the main menu. Any other key
  2060.   continues. You will be prompted to enter a "Loop Count". If you select a
  2061.   count of 1, you will be able to hear the connecting tones on your speaker.
  2062.   If you select a count greater than 1, then the speaker is turned off. 
  2063.  
  2064.   After you make your selection, two windows will open on your screen. One
  2065.   contains data that is being sent to the modem, the other data that has
  2066.   been received by the modem. All of the characters from binary 0 to binary
  2067.   255 are transmitted. Some of these will look strange because they are
  2068.   characters of the extended character set. The Modem Doctor takes a great
  2069.   deal of care in preserving the normal condition of your modem before
  2070.   testing, and sends all the character strings necessary to test without
  2071.   disturbing any non-volatile memory settings. If you have an external
  2072.   modem, you will see the data being sent and acknowledged before testing
  2073.   begins. 
  2074.  
  2075.   While it is setting up, the Modem Doctor tells you what is going
  2076.   on, including that the modem is reset, that commands are being sent, and
  2077.   that it is waiting for a carrier. The Modem Doctor waits up to 15 seconds
  2078.   for either the word CONNECT or the RLS signal to go active. If this does
  2079.   not happen, the Modem Doctor switches to the &T0 command set that is used
  2080.   by Hayes 2400's and several other clones. This test is just as valid as a
  2081.   full carrier test for these types of modems, and verifies both the modem
  2082.   and the uart signal paths as does the traditional carrier test. If you
  2083.   switch to this mode, you will be informed via the screen and the message
  2084.   "CCITT V.54 " will be displayed. Also, if you have an external
  2085.   modem, you might see the "modem ready" light flashing throughout this
  2086.   test. If you selected the &T0 instruction set yourself from the Modem
  2087.   Driver selection menu, then the &T0 set will be used exclusively. This
  2088.   selection is mainly a convenience for some users (because the
  2089.   auto-detection method takes a little longer), however it will not test any
  2090.   other kind of modem properly. 
  2091.  
  2092.   If you are unsure, let the Modem Doctor figure it out for you. Note, if
  2093.   you select more than 1 itineration and change you mind, press ESCAPE
  2094.   anytime during the test. At the next available loop-repeat time the Modem
  2095.   Doctor will abort testing and give you your current status.  
  2096.           
  2097.  
  2098.   4.34 Uart or Dumb Modem Tests 
  2099.   ----------------------------- 
  2100.  
  2101.                                         Page 31
  2102.  
  2103.  
  2104.  
  2105.  
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.  
  2116.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2117.  
  2118.  
  2119.   This test works the same as the AT instruction set modem test with two
  2120.   main exceptions. First, Your modem must be able to generate a carrier on
  2121.   its own on the answer and originate frequencies. Most external "dumb" 
  2122.   modems have front panel switches for this function. Most are marked as AL
  2123.   (for Analog Loopback). If your modem can generate this, answer yes  and
  2124.   follow the prompts on the screen. All testing is performed as above,
  2125.   except you setup the modem instead of the Modem Doctor using its modem
  2126.   driver software.  Whenever the Modem Doctor is working with the micro in
  2127.   the "Off-line" mode, the dumb mode tests are used. You are prompted if
  2128.   your modem can generate a carrier. Answer yes to start the testing. You
  2129.   are then told to place your modem in the analog loop mode and force the
  2130.   carrier detect on. Most dumb modems will light the CD light on the front
  2131.   panel of the modem when you press the AL switch. This CD light sends a RLS
  2132.   (Received  Line Signal) status word to the uart. The Modem Doctor looks
  2133.   for this before it will allow testing in this dumb mode. If your modem
  2134.   cannot generate a carrier indication, you can still test an analog
  2135.   loopback using the loopback function in the registered version and select
  2136.   the analog loopback tests (this is explained later in the documentation).  
  2137.  
  2138.  
  2139.  
  2140.  
  2141.  
  2142.  
  2143.  
  2144.  
  2145.  
  2146.  
  2147.  
  2148.  
  2149.  
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.                                         Page 32
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2185.  
  2186.  
  2187.            
  2188.   4.35 Error Messages 
  2189.   -------------------     
  2190.   If A RLS (Received Line Detect) signal is not received before testing
  2191.   begins, this indicates that either a carrier is not being generated (or
  2192.   properly received in self test) by the modem, or an RS-232 Cable to an
  2193.   external modem is improperly wired. Although RS-232 loops will work fine
  2194.   without an RLS signal being wired, there is no way for the Modem Doctor to
  2195.   detect on a dumb modem if a carrier was generated. On a AT instruction set
  2196.   modem, the Modem Doctor alternately looks for the word "CONNECT" to be
  2197.   sent from the modem if there is no RLS signal available. If you wish your
  2198.   all of your communications programs to work properly, you should get a
  2199.   cable with this signal wired. If an error is detected during the analog
  2200.   test, the error counter is incremented. There are two error counters; one
  2201.   is used for the originate mode, and the other for the answer mode. If you
  2202.   receive an error, it could be due to a problem with a uart or a modem at a
  2203.   certain baud rate. Try testing at other baud rates to determine if the
  2204.   errors repeat. Also errors could occur on only the originate or the answer
  2205.   frequency. This is more prevalent at higher baud rates. Finally, make sure
  2206.   that the modem was disconnected from the phone line before testing. The
  2207.   dial-tone interferes with some modems. One other possibility exists, that
  2208.   there could be a problem with a cable or interrupts not properly being
  2209.   generated or properly handled by the CPU. Run the digital/loopback tests
  2210.   and if the problem repeats, you might have a bad uart or motherboard
  2211.   problem. Although it is unlikely, if power is removed from the modem or a
  2212.   cable falls off (or who knows what else), the Modem Doctor waits a
  2213.   pre-determined period of time for an interrupt to occur. If none is
  2214.   detected, the warning "Modem Queue Failure" or "Modem Receiver Failure" 
  2215.   will be displayed in one of the windows. These might also be displayed if
  2216.   the modem never acknowledged a character being transmitted, or never sent
  2217.   one back. Again, the only conditions that would cause this would be a
  2218.   cable being removed between the modem and the uart, the power being
  2219.   removed to the modem, or the modem "blowing up" via some unnatural means
  2220.   during the test. If the RLS (Received Line Signal) is constantly active
  2221.   from the modem, the Modem Doctor will tell you that you might have a
  2222.   problem with a cable or the modem and that the test results might not be
  2223.   valid. Reason for this is that the Modem Doctor never did detect a carrier
  2224.   because the uart said it was already there. This can be traced in nearly
  2225.   all cases to the modem. Change the setting of the modem to let the carrier 
  2226.   Detect (CD) act normally. It should never be set to be forced on for a PC.
  2227.   If so, not only the Modem Doctor, but other communications programs will 
  2228.   not operate properly. 
  2229.  
  2230.   4.36 IRQ Failures
  2231.   -----------------
  2232.   The Modem Doctor will allow you to test a modem that might not have a
  2233.   proper IRQ assignment. Such errors in jumper settings on your serial cards
  2234.   or internal modems are tough to trace. If you see this error message
  2235.   displayed, it means that your modem is receiving signals properly, but it
  2236.  
  2237.                                         Page 33
  2238.  
  2239.  
  2240.  
  2241.  
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.  
  2248.  
  2249.  
  2250.  
  2251.  
  2252.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2253.  
  2254.  
  2255.   cannot communicate back to the computer over normal interrupt assignments.
  2256.   This normally results from using an IRQ line reserved for one comm port
  2257.   with another. See the section above about IRQ's if you get this error, and
  2258.   use the table above as a guide to how to correct your problem.
  2259.   IRQ failures will be displayed in the setup mode, the Regs Quick Uart
  2260.   Diagnostics mode, the Analog Loopback mode and the Carrier Tests mode.
  2261.  
  2262.   4.4 Loopback Tests     
  2263.   -------------------      
  2264.   The loopback tests were designed for two purposes. First, to test an
  2265.   RS-232 loop including cables that are properly terminated with a loopback
  2266.   plug, and second, to run a digital loopback test on 8250 and 100%
  2267.   compatible uarts. Additionally, the analog portion of this test can be
  2268.   used to test a dumb modem that does not generate a CD (carrier detect)
  2269.   signal when the AL switch is thrown on the front panel. Selecting loopback
  2270.   and pressing return fetches this menu;      
  2271.  
  2272.  
  2273.   ╔[  Loopback Tests  ]═══════════╗
  2274.   ║ Analog Loopback using a PLUG  ║ +<- test Uart & Cables
  2275.   ║ Digital Loopback 8250 UARTS   ║ +<- Uart test only
  2276.   ║ Loopback Plug Technical Data  ║ +<- How to build a
  2277.   ║ Help with Loopback Tests      ║     loopback plug
  2278.   ║     Return To Main Menu       ║
  2279.   ╚═══════════════════════════════╝
  2280.                                     +registered version only
  2281.  
  2282.  
  2283.   Analog loopback tests require that you attach a Loopback plug either to
  2284.   the back of the Comm port connector on your computer, or at the end of a
  2285.   RS-232 Cable. This test is designed for external modems, however you could
  2286.   run this on an internal modem as a test of the command channel's ability   
  2287.   to receive characters. Caution should be used on internal modems, for some
  2288.   will fail this test. If this happens, don't be concerned. However this
  2289.   test should NEVER fail with a loopback plug, unless you were trying to
  2290.   drive the line at an excessive rate. Remember, the faster the data rate,
  2291.   the shorter the lines should be, and the faster the computer should be to
  2292.   handle it. With a loopback plug on the back of the serial port, speeds of
  2293.   56000 bps should run fine even on a slower PC (as long as it is not multi-
  2294.   tasking). If you experience problems at 56000 but not at 19200,  chances
  2295.   are your hardware is fine (if you are using an 8250-B). In extensive
  2296.   testing with PC's at 4.77 mhz, the original 8250-B performed flawlessly at
  2297.   56000 bps. Dumb modems can use this test also (as explained above and in
  2298.   the section carrier tests). Digital loopback tests require that you have 
  2299.   an 8250-B, 8250A,16450, 16550,  16550A(x) or other 100% compatible uart in
  2300.   your system. These uart's have built-in diagnostics. If you are using a PC
  2301.   compatible internal modem or a PC compatible serial card, then you will
  2302.   definitely have a compatible uart installed.  
  2303.  
  2304.  
  2305.                                         Page 34
  2306.  
  2307.  
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.  
  2314.  
  2315.  
  2316.  
  2317.  
  2318.  
  2319.  
  2320.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2321.  
  2322.  
  2323.   There is a design difference between the 8250-B and other compatible chips
  2324.   in this series. Some of the differences were explained above, but the
  2325.   important difference for the loopback test is the way the different uarts
  2326.   will respond.  The 8250-B allowed its OUT2 signal to become active during
  2327.   loopback testing. The OUT2 signal is used by PC compatible machines to
  2328.   gate the interrupt signal off of the serial board (or internal modem).
  2329.   Later designs (8250A, 16450, 16550,16550AN) tri-stated this line. As a
  2330.   result, the self-test diagnostics will not allow the interrupt signal to
  2331.   gate off the board and interrupt the CPU. This would cause all digital
  2332.   loopback tests on these improved chips to fail. The Modem Doctor handles
  2333.   this by a brute-force read of the uarts. By sampling the Interrupt ID
  2334.   register, the presence of an interrupt is detected, then the receiver
  2335.   buffer register is read. This method is not as efficient as a true
  2336.   interrupt-driven test would be, but it is accurate. The Uart does generate
  2337.   the ID for an interrupt, the character is pulled out of the uart. In
  2338.   version 4.0, the speed of this routine was significantly enhanced so that
  2339.   it runs approximately at the same speed as a true interrupt driven 8250-B.
  2340.  
  2341.   When running this test on an 8250-B, you will see the true speed of the
  2342.   interrupt handling and processing. On others, you  will see the
  2343.   brute-force method. Each is an accurate test of the uart and valid at any
  2344.   baud rate selected. If this test does not run, but yet the analog test and
  2345.   all other tests  run fine, it means that you do not have a compatible uart 
  2346.   installed.  Some uarts that are not 8250's have a problem entering this
  2347.   mode properly.  If the test does not start, do not be alarmed, because 
  2348.   only 8250 and true compatibles will pass this test. However this test will
  2349.   NEVER start and then fail unless you do have a hardware problem. You
  2350.   should never pick up a character error using this test. If you do, you
  2351.   have a bad uart or  CPU motherboard problem. Both tests open up windows
  2352.   (like the analog test) and send and receive characters to the uart. If you
  2353.   wish to know how to build a loopback plug, select the Loopback Plug
  2354.   technical data section. Pressing ESCAPE or the left/right arrows is the
  2355.   same as Option 4 and returns you to the main menu.  
  2356.  
  2357.         
  2358.   4.41 Loopback Test Error messages         
  2359.   ---------------------------------           
  2360.   Essentially the error messages for these tests are simple. In the loopback
  2361.   test mode, if a character is received incorrectly, the error counter is
  2362.   advanced and a report is issued at the end. If the analog or digital tests
  2363.   fail to receive or transmit characters, the messages will explain that
  2364.   either the transmit queue, the receive queue failed, or that the uart did
  2365.   not respond to the tests. The last message may be displayed if you have a
  2366.   non-compatible uart. If the uart fails to setup properly for the digital
  2367.   loopback test (does not program its registers properly), a warning is    
  2368.   displayed that there is an error in one of the registers. The message will
  2369.   explain what is wrong and what it expects.  Also, if you are using the
  2370.   wrong IRQ line for your comm port, you will receive an IRQ failure error.
  2371.   See the warning message section for more details.                    
  2372.  
  2373.                                         Page 35
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.  
  2386.  
  2387.  
  2388.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2389.  
  2390.  
  2391.  
  2392.  
  2393.  
  2394.  
  2395.  
  2396.  
  2397.  
  2398.  
  2399.  
  2400.  
  2401.  
  2402.  
  2403.  
  2404.  
  2405.  
  2406.  
  2407.  
  2408.  
  2409.  
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.  
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.  
  2424.  
  2425.  
  2426.  
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.  
  2434.  
  2435.  
  2436.  
  2437.  
  2438.  
  2439.  
  2440.  
  2441.                                         Page 36
  2442.  
  2443.  
  2444.  
  2445.  
  2446.  
  2447.  
  2448.  
  2449.  
  2450.  
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2457.  
  2458.  
  2459.  
  2460.   4.5 Options Mode
  2461.   ---------------------              
  2462.                                 ╔[  User Options Selection  ]╗
  2463.    A Built-in mini-terminal  -> ║ Interactive Terminal Mode  ║
  2464.    Status of all tests       -> ║ View Current Statistics    ║
  2465.    Reset all tests to 0      -> ║ Reset Current Statistics   ║
  2466.    Send results to printer   -> ║ Print Current Statistics   ║
  2467.                                 ║ Help with these options    ║
  2468.                                 ║    Return To Main Menu     ║
  2469.                                 ╚════════════════════════════╝
  2470.  
  2471.   The options mode allows you access to the built-in 16k communications
  2472.   terminal (Interactive Mode), and the report generator features. 
  2473.  
  2474.   4.51 Interactive Mode
  2475.   ----------------------
  2476.   As well written as the Modem Doctor is, there exists the possibility that
  2477.   a modem or a system might not be compatible with the diagnostics. The
  2478.   manual section allows you to send your own string commands to the modem,
  2479.   read back data, and in fact you could use this as a mini-communications
  2480.   program.  If you select this mode, a window opens with the banner
  2481.   Interactive Mode. At the Bottom are listed the "Hot-Keys" you can use;
  2482.  
  2483.         ALT-B   This opens a window for you to change the baud rate.         
  2484.          Note: if you are on-line with a service this might cause an         
  2485.          error between the computer and the modem. Off-line conditions       
  2486.          should work properly. 
  2487.            
  2488.         ALT-C   Clears the screen. This only clears the window of data, and  
  2489.          leaves all your prompts.   
  2490.  
  2491.         ALT-N   Add Nulls, this is new with Modem Doctor 5.0, and can be used
  2492.          to determine if your display adapter is causing "Interrupt Latency"
  2493.            
  2494.         ALT-R   This displays the Uart registers...handy for real-time       
  2495.          troubleshooting of RS-232 loops.      
  2496.            
  2497.         ALT-H   Help..this displays the basic AT Command set instructions 
  2498.          that  you could use to control your modem. Note that this is only a 
  2499.          basic set. Some modems have many extensions to this, so for         
  2500.          advanced work, consult your owners manual.      
  2501.            
  2502.         ALT-X   Exits the interactive mode and returns to the main menu.     
  2503.  
  2504.  
  2505.  
  2506.  
  2507.  
  2508.  
  2509.                                         Page 37
  2510.  
  2511.  
  2512.  
  2513.  
  2514.  
  2515.  
  2516.  
  2517.  
  2518.  
  2519.  
  2520.  
  2521.  
  2522.  
  2523.  
  2524.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2525.  
  2526.  
  2527.  
  2528.   4.51A Testing for Interrupt Latency
  2529.   -----------------------------------
  2530.   Interrupt Latency is caused by a hardware device (usually a hard disk or a 
  2531.   video display adapter) taking longer to process a function that the time it 
  2532.   takes to receive a character over your modem. Normally, interrupt latency is 
  2533.   not a problem until you use DTE/DCE speeds over 19200bps. With today's high-
  2534.   speed modems, its not uncommon for people to be running speeds of 38400 or 
  2535.   57600bps between computer and modem. Older display adapter, most notably 
  2536.   early EGA's with "Auto-detection" circuitry, cause interrupt latency. The 
  2537.   symptoms will range from loosing characters occasionally to excessive errors 
  2538.   when downloading files. 
  2539.  
  2540.   There is no real test for interrupt latency, because such a wide variety of 
  2541.   situations can cause it. The only "cure" is to aquire a faster display 
  2542.   adapter or a 16550AFN uart. Now, there is a way that you can use Modem Doctor 
  2543.   to verify such an error is happening, and that is by using ALT-N. When you 
  2544.   add nulls, you are telling Modem Doctor to wait a bit longer inside of a 
  2545.   routine that talks to your video adapter, looking for more interrupts before 
  2546.   exiting the display routine. If adding nulls improves the error rate that you 
  2547.  
  2548.  
  2549.   see characters displayed (while on-line via the Interactive mode to a BBS), 
  2550.   then you know you do indeed have an interrupt latency problem. There are two 
  2551.   "short-cut" keys associated with ALT-N, and they are ALT+ and ALT-. ALT-N 
  2552.   prompts you for a number, while ALT+ adds 1 to that number, and ALT- 
  2553.   subtracts 1 from that number.
  2554.  
  2555.   4.52 View Current Statistics
  2556.   ----------------------------
  2557.   Whenever you log-in a comm port for testing, the Modem Doctor keeps tabs
  2558.   on how many tests were run, the baud rates that were tested, and how many
  2559.   errors you accumulated. You can view these statistics by using this
  2560.   selection. These results are also displayed whenever you quit the Modem
  2561.   Doctor.
  2562.  
  2563.   4.53 Print Current Statistics
  2564.   -----------------------------
  2565.   If you wish a hard-copy of your test results, just select this option. You
  2566.   will be able to send this to any one of the printers the modem doctor
  2567.   finds available or to a file called MDR.RPT.
  2568.  
  2569.  
  2570.   4.54 Reset Current Statistics
  2571.   -----------------------------
  2572.   Use this mode to reset all test results back to zero at any time.     
  2573.  
  2574.  
  2575.  
  2576.  
  2577.                                         Page 38
  2578.  
  2579.  
  2580.  
  2581.  
  2582.  
  2583.  
  2584.  
  2585.  
  2586.  
  2587.  
  2588.  
  2589.  
  2590.  
  2591.  
  2592.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2593.  
  2594.  
  2595.  
  2596.   4.6 Setup Mode     
  2597.   --------------      
  2598.   The setup mode consists of 2 sections. The first, the setup modem section
  2599.   was covered above. Use this to change the serial port under test, the baud
  2600.   rate, and the type of test to be run.        
  2601.  
  2602.   The second section allows you to select the colors that you wish to work
  2603.   with while using the Modem Doctor. You can select default colors,
  2604.   Monochrome (black and white), or create your own custom colors.
  2605.  
  2606.   If you are using a color monitor, you can use window selections to pick
  2607.   the colors you like and optionally save them to a file (MDR.CFG). If you
  2608.   save them, then as long as this file exists, the Modem Doctor will use
  2609.   those colors in place of the default ones. To return to default, either
  2610.   erase the MDR.CFG file, or select default colors and save it to disk.
  2611.  
  2612.   When you enter the color selection mode, you will be presented with three
  2613.   different windows that will allow you to make legal color selections.
  2614.  
  2615.  
  2616.   [ Mdr Color Selection Screen ]
  2617.   Select from this menu the color of normal window and error backgrounds
  2618.   Background
  2619.   Black 
  2620.   Blue  
  2621.   Green 
  2622.   Cyan 
  2623.   Red 
  2624.   Magenta 
  2625.   Brown 
  2626.   Gray 
  2627.  
  2628.   Select from this menu the color of all window foregrounds & sliding bars
  2629.   foreground colors;
  2630.   Darkgray 
  2631.   Lightblue 
  2632.   Lightgreen 
  2633.   Lightcyan 
  2634.   Lightred 
  2635.   Lightmagenta
  2636.   Yellow 
  2637.   White 
  2638.  
  2639.   If you select two colors the same (or different intensities that are the
  2640.   same), the Modem Doctor will tell you your selections are invalid. After
  2641.   you have made your choices, you will be presented with a window that
  2642.   allows you to save your choices to a file, use the choices without saving
  2643.   or reselect. If you save them to a file, a file MDR.CFG is created or 
  2644.  
  2645.                                         Page 39
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.  
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.  
  2660.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2661.  
  2662.  
  2663.   updated. When Modem Doctor loads the next time, it will use these colors
  2664.   again.
  2665.  
  2666.  
  2667.   4.7 Exit Program     
  2668.   ----------------     
  2669.   This is the only way to exit the Modem Doctor. This is necessary because
  2670.   the interrupt tables and controllers of your PC must be  returned to their
  2671.   original state in order to avoid problems after you  use the Modem Doctor. 
  2672.   Pressing Control-C or Control-Break during the Modem Doctor will         
  2673.   cause one of two things to happen. First, it will ignore what you have
  2674.   done if it is critical that the program not be interrupted, or second, if
  2675.   it is at all possible to exit without damage, a window will open telling
  2676.   you that you can Control-Break abort if you wish..answer yes or no. You
  2677.   can Control-Break during all tests and at times from menus. If you choose
  2678.   to quit, the Modem Doctor cleans things up properly and exits to Dos.
  2679.   Please remember this is just an emergency way of doing an exit. Use the
  2680.   Exit function from  the main menu as the correct way to end the program.
  2681.  
  2682.  
  2683.   5.0 Error Messages and their Meanings     
  2684.   -------------------------------------     
  2685.   The Modem Doctor, if presented with an error, will make a diagnosis of the
  2686.   problem. In most cases, this should be enough for you to figure out what
  2687.   is wrong and go on from there to correct it.      
  2688.            
  2689.   General Program Errors or Warnings
  2690.   ----------------------------------
  2691.   1)   ABORT PROGRAM Control Break Key pressed..Aborting Program Run. 
  2692.        Do you wish to abort? [Y/N] : 
  2693.        - This means you have pressed the Control Break Key sometime during
  2694.        the program run. The Modem Doctor, unlike most programs, does not
  2695.        drop to dos with a Control-Break without cleaning up after itself.
  2696.        Answering Yes will clean up and stop the program. Answering no keeps
  2697.        the program running at the spot you left off at.
  2698.  
  2699.        If you answer Yes, you will see this message;
  2700.        Flushing Buffers.......Restoring Comm Port and Interrupt Vectors
  2701.        Program Aborted..all vectors restore.
  2702.  
  2703.   2)   You Must SETUP a COMM PORT first....Press any key to continue 
  2704.        - If you do not select at least 1 comm port when the program first
  2705.        starts running, you cannot run any tests. This message explains why.
  2706.  
  2707.   3)   Exchanging COM1 and COM2 Base Addresses in Memory
  2708.        COM1 Address was    %x   COM2 Address was    %x
  2709.        COM1 Address now is %x   COM2 Address now is %x
  2710.        Run MDR /X again to exchange again, these changes are gone when you
  2711.        reboot!
  2712.  
  2713.                                         Page 40
  2714.  
  2715.  
  2716.  
  2717.  
  2718.  
  2719.  
  2720.  
  2721.  
  2722.  
  2723.  
  2724.  
  2725.  
  2726.  
  2727.  
  2728.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2729.  
  2730.  
  2731.        - This messages is displayed when Modem Doctor is run in the exchange
  2732.        mode (MDR /x).
  2733.  
  2734.  
  2735.  
  2736.  
  2737.  
  2738.   4)   Sorry...but I cant find a modem to use... Use Login Feature to
  2739.        Manually Log in a comm port.
  2740.        - The Modem Doctor needs at least 1 comm port installed at a
  2741.        conventional port address to run. If none are available, you have to
  2742.        use the manual login mode to start testing. You should never see this
  2743.        error message with a computer unless it has no serial ports
  2744.        whatsoever.
  2745.  
  2746.   5)   Resetting modem to your default settings...please wait
  2747.        - Whenever you exit Modem Doctor and a microprocessor-based modem was
  2748.        detected, it will clean up after itself and restore your modem to
  2749.        initial settings. Uart only tests do not display this message.
  2750.  
  2751.   6)   Your foreground color equals  background..please retry
  2752.   7)   Your foreground low intensity equals background, please retry
  2753.        - These messages are displayed when you make color selection choices
  2754.        that would not be proper for the type of display monitor you are
  2755.        using.
  2756.  
  2757.   8)   Warning..I could not create the MDR.CFG file. No colors saved to disk
  2758.        - Modem Doctor could not save the file to disk, perhaps there is no
  2759.        more space on the disk or the disk is write-protected.
  2760.  
  2761.   9)   Warning..I could not read the MDR.CFG file. No colors read to disk
  2762.        - You asked Modem Doctor to load the color configuration, however
  2763.        there was none found on your disk or in the current working
  2764.        directory.
  2765.  
  2766.   Setup Mode Diagnostics
  2767.   -----------------------
  2768.   1)   No Response...resetting modem microprocessor ...attempt #%d
  2769.        - The Modem Doctor tried sending a simple AT command to your modem
  2770.        but it did not respond with a valid answer.
  2771.  
  2772.   2)   Modem microprocessor command mode not detected
  2773.        - The Modem did not respond to a valid, simple AT command either
  2774.        because it is on-line, jammed, or not completely compatible.
  2775.  
  2776.   3)   Modem microprocessor command bus active
  2777.        - The Modem Doctor received a correct response from the modem and
  2778.        placed it into the command mode.
  2779.  
  2780.  
  2781.                                         Page 41
  2782.  
  2783.  
  2784.  
  2785.  
  2786.  
  2787.  
  2788.  
  2789.  
  2790.  
  2791.  
  2792.  
  2793.  
  2794.  
  2795.  
  2796.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2797.  
  2798.  
  2799.   4)   Software reset initiated
  2800.        - A software reset clears all test registers and resets the modem.
  2801.  
  2802.   5)   Modem microprocessor memory tests OK
  2803.        - The Modem Doctor instructed your modem to run a self-test of its
  2804.        RAM/ROM contents. It responded successfully.
  2805.  
  2806.  
  2807.  
  2808.   6)   Modem microprocessor memory may have a problem
  2809.        - The Modem Doctor instructed your modem to run a self-test of its
  2810.        RAM/ROM contents and did not receive the proper response. Your modem
  2811.        may or may not have a problem depending on the results of all the
  2812.        rest of the testing. If all other tests are ok, chances are your
  2813.        modem might have a memory problem. If other tests fail, it could be
  2814.        because your modem is not completely compatible.
  2815.  
  2816.   7)   Modem ID reports a 1200 bps modem installed
  2817.        Modem ID reports a 2400 bps modem installed
  2818.        Modem reports a 9600+ bps modem installed
  2819.        Modem reports a 9600 /1440 bps modem installed
  2820.        - All of these messages are based on receiving correct product codes
  2821.        from your modem. Some modem manufacturers however do not place valid
  2822.        product codes in their modems, so it is possible that you might see
  2823.        the Modem Doctor give you the incorrect type of modem. This does not
  2824.        affect testing, however it does affect the type of Modem Driver that
  2825.        is automatically selected. You can override automatic selections from
  2826.        the Carrier Menu by selecting the proper driver for your modem.
  2827.  
  2828.   8)   No modem ID received...using Generic driver
  2829.        - No product code was received, so defaults are being used.
  2830.  
  2831.   9)   Modem microprocessor accepts setup commands
  2832.        Modem microprocessor did not accept setup commands
  2833.        - The Modem Doctor sends setup commands for all of its tests to your
  2834.        modem. If they were not received properly, you get an error message.
  2835.  
  2836.   10)  An 8250-B Uart has been detected
  2837.        A 16450 / 8250A Uart has been detected
  2838.        A 16550AN/AF/AFN Buffered Uart has been detected
  2839.        A 16550 Non-buffered Uart has been detected
  2840.        - The Modem Doctor programs uarts differently depending on the type
  2841.        and the test running. This will tell you what type of uart chip you
  2842.        have installed in your serial port.
  2843.  
  2844.   11)  Modem Control Register reading show that either the LOOP, OUT2, DTR
  2845.        RTS did not set properly to test. OUT2 and DTR are essential for
  2846.        proper-functioning communications. LOOP is necessary for the digital
  2847.        test to run.
  2848.  
  2849.                                         Page 42
  2850.  
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.  
  2861.  
  2862.  
  2863.  
  2864.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2865.  
  2866.  
  2867.        -Either the Modem Control Register is bad, or their is a problem with
  2868.        the serial port or modem.
  2869.  
  2870.   12)  Modem Status Register readings show that there is no status coming
  2871.        back from the modem to the Uart. Neither RTS/CTS or DTR/DSR Pairs are
  2872.        active. Most comm programs can work without RTS/CTS, but DTR/DSR are
  2873.        needed by most. RTS/CTS are needed by most hi-speed modems for
  2874.        handshaking.
  2875.        -Your external cable may be wired wrong, or if this is an external
  2876.        modem, check that the cable is plugged in and that the modem is
  2877.        turned on.
  2878.  
  2879.  
  2880.   13)  Line Control Register readings show that the word length selected is
  2881.        incorrect or you have a parity error. WS1 and WS0 should both be on
  2882.        indicating that 8 bit words are to be used. All other readings should
  2883.        be low. Parity errors could happen once but not every time. 
  2884.        -If either persists, then the Uart is defective or communications to
  2885.        the Uart are suspect.
  2886.  
  2887.  
  2888.   14)  Line Status Register readings show a problem. The Tx Holding register
  2889.        THE and the Tx Shift register TSE should be the only active signals.
  2890.        No other signals should be active. If either TSE or THE are not
  2891.        active then the Uart is not resetting properly. Uart is suspect. If
  2892.        any other signal is high, and TSE/THE are both active, then you have
  2893.        a data overrun or framing error. 
  2894.        -If this repeats, you should then suspect the Uart or connections to
  2895.        the Uart from the computer.
  2896.  
  2897.  
  2898.   15)  Modem Control Register readings show that either DTR,RTS or OT2
  2899.        signals are not set properly. DTR & RTS are needed by most comm
  2900.        programs. OT2 is essential for interrupts to occur. 
  2901.        - Uart is suspect or the interface to the Uart from the computer bus.
  2902.  
  2903.   16)  Interrupt ID Register readings show that an interrupt is pending when
  2904.        none should be. This can be caused by a modem being turned on and off
  2905.        as testing was conducted or if data was waiting to be read by a prior
  2906.        running application, or you are not using the correct IRQ line.
  2907.        -If this does not clear when you display the registers again, then
  2908.        the Uart is suspect or connections to the Uart from the computer, or
  2909.        you are using the wrong IRQ line for this comm port assignment.
  2910.  
  2911.  
  2912.   17)  Interrupt Enable Register readings show that ERI Enable Receiver ints
  2913.        is not set properly. As a result, you might not get proper
  2914.        recognition of any interrupts being generated when a character is
  2915.        received. 
  2916.  
  2917.                                         Page 43
  2918.  
  2919.  
  2920.  
  2921.  
  2922.  
  2923.  
  2924.  
  2925.  
  2926.  
  2927.  
  2928.  
  2929.  
  2930.  
  2931.  
  2932.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  2933.  
  2934.  
  2935.        -Suspect the Uart or connections to the Uart from the computer bus.
  2936.  
  2937.   18)  Interrupt Controller has not responded to setting the IRQ4 line. This
  2938.        problem is on the system board of your computer. Run your computer
  2939.        diagnostics program to locate the error.
  2940.        -Normally IRQ4 is used for COM1 you might have a usage conflict.
  2941.  
  2942.   19)  Interrupt Controller has not responded to setting the IRQ3 line. This
  2943.        problem is on the system board of your computer. Run your computer
  2944.        diagnostics program to locate the error.
  2945.        -Normally IRQ3 is used by COM2 you might have a usage conflict.
  2946.  
  2947.  
  2948.  
  2949.  
  2950.  
  2951.   20)  Interrupt Controller has not responded to setting the IRQ7 line. This
  2952.        problem is on the system board of your computer. Run your computer
  2953.        diagnostics program to locate the error.
  2954.        -Normally IRQ7 is used by the printer you might have a usage
  2955.        conflict.
  2956.  
  2957.   21)  Interrupt Controller has not responded to setting the IRQ5 line. This
  2958.        problem is on the system board of your computer. Run your computer
  2959.        diagnostics program to locate the error.
  2960.        -Normally IRQ5 is used by the Hard Drive Controller you might have a
  2961.        usage conflict.
  2962.  
  2963.   22)  WARNING...This COMM PORT MODEM STATUS & ID REGISTERS ARE DEFECTIVE
  2964.        - This is a severe error. It means that one or more of the uart
  2965.        registers are defective. This could also be caused by logging in a
  2966.        non-existent comm port in the manual mode. You should never see this
  2967.        message displayed in an auto-detected mode unless your uart is
  2968.        definitely defective.
  2969.  
  2970.  
  2971.   Uart diagnostics
  2972.   -----------------
  2973.   1)   Confirmed Uart setup to proper baud rate
  2974.        - The uart Dlab (divisor latch) settings are polled to make sure they
  2975.        match what the Modem Doctor intended. If not, you see the following
  2976.        displayed;
  2977.        ERROR..Uart did not set to desired baud rate
  2978.        (you should not see this message unless the divisor latch in your
  2979.        uart is defective).
  2980.  
  2981.   2)   Trying a hardware reset of the modem microprocessor
  2982.        - None of the attention commands or soft-resets to the modem have
  2983.        worked to place the modem microprocessor on-line. A hardware reset
  2984.  
  2985.                                         Page 44
  2986.  
  2987.  
  2988.  
  2989.  
  2990.  
  2991.  
  2992.  
  2993.  
  2994.  
  2995.  
  2996.  
  2997.  
  2998.  
  2999.  
  3000.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3001.  
  3002.  
  3003.        simulates turning the power on and off to the modem and uart.
  3004.  
  3005.   3)   WARNING...This unit does not have a compatible modem attached
  3006.        - After many tests and hardware/software resets, the Modem Doctor
  3007.        finally deduces it cannot work with this modem because it is not
  3008.        compatible. If you have a compatible modem, then you might have
  3009.        selected the wrong baud rate to work with, or you forgot to turn the
  3010.        external modem on. If there is a hardware problem, the next screen
  3011.        you will receive will be the uart diagnostics pointing out the
  3012.        problem. 
  3013.  
  3014.   4)   Modem microprocessor ON-LINE
  3015.        - The Modem Doctor successfully communicated to the modem
  3016.        microprocessor.
  3017.  
  3018.  
  3019.  
  3020.  
  3021.  
  3022.   5)   Testing Uart hardware only
  3023.        - You are running uart-only tests.
  3024.  
  3025.   6)   WARNING...The Modem Device appears to be off or not connected
  3026.        - No status is being received from the modem indicating it is on. If
  3027.        it is on, you might have a bad cable. If you are testing a uart that
  3028.        is hooked up to a serial mouse, then you will always see this message
  3029.        displayed, for a serial mouse does not use traditional uart status.
  3030.  
  3031.   Report Generator Messages
  3032.   --------------------------
  3033.  
  3034.   1)   You selected to clear the report stats.This means that any errors
  3035.        found will not be reported in a final report format. 
  3036.        Are you sure [Y/N]: ? 
  3037.        - All report statistics will be cleared if you respond Yes.
  3038.  
  3039.   2)   Send to file MDR.RPT 
  3040.        Send to printer LPT1:
  3041.        Send to printer LPT2:
  3042.        Send to printer LPT3:
  3043.        Do not Print /Return
  3044.        - The printed form of your report can be sent to any one of 3 dos
  3045.        printers (if the Modem Doctor detects they are installed) or to a
  3046.        file called MDR.RPT.
  3047.        
  3048.   3)   Print Buffer full or Printer off-line
  3049.        - If the Modem Doctor cannot communicate with the printer, it is
  3050.        either receiving a busy signal from the printer (which clears when
  3051.        the busy signal is lifted) or the printer is off-line.
  3052.  
  3053.                                         Page 45
  3054.  
  3055.  
  3056.  
  3057.  
  3058.  
  3059.  
  3060.  
  3061.  
  3062.  
  3063.  
  3064.  
  3065.  
  3066.  
  3067.  
  3068.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3069.  
  3070.  
  3071.   Static DTR/DSR   RTS/CTS  Handshaking tests
  3072.   -------------------------------------------
  3073.  
  3074.   1)   Lowering DTR Signal..waiting for DSR to follow
  3075.        DSR did not follow DTR dropping or is set as a permanent ON
  3076.        DSR followed DTR drop...normal for all devices
  3077.        DSR did not follow DTR raising..possible cable or modem setup problem
  3078.        DSR followed DTR raise or is set as a permanent ON
  3079.        - The DTR/DSR tests work by lowering the DTR (Data terminal ready)
  3080.        signal from the computer to the modem. If the modem uses this type of
  3081.        handshaking, it should respond by lowering its signal that is picked
  3082.        up in the uart modem status register as a DSR (Data set ready)
  3083.        signal. If not, then either the modem is not set up properly
  3084.        according to standard handshaking protocol or you have a bad cable. 
  3085.        Please note, a failure to follow DTR/DSR handshaking might keep some
  3086.        communication programs from working with your modem. If you get an
  3087.        error, consult your modem manual or have the Modem Doctor test your
  3088.        cable to an external modem with a loopback plug.
  3089.        
  3090.   2)   Lowering RTS signal..waiting for CTS to follow
  3091.        Dropping RTS Signal to modem
  3092.        Modem is using RTS/CTS Handshaking properly
  3093.        Modem is not using RTS/CTS Handshake hold
  3094.        Raising RTS line    
  3095.        CTS did not follow RTS dropping...usually normal for modems
  3096.        CTS followed RTS drop...usually normal for serial devices
  3097.        CTS did not follow RTS raising...you could have a cable problem
  3098.        CTS followed RTS raise or is set as a permanent ON
  3099.        - Like DTR/DSR, RTS/CTS handshaking tests check that if the computer
  3100.        lowers its RTS (Ready to send) line, that the modem responds in kind
  3101.        and that the CTS (Clear to send) status is echoed to the uart modem
  3102.        status register. This signal is not as important as the DTR/DSR,
  3103.        however if you have a high speed modem, this test should pass to
  3104.        insure proper high-speed transfers.
  3105.  
  3106.  
  3107.   Carrier and Dynamic tests
  3108.   ---------------------------
  3109.   1)   Sending Carrier Test info to modem
  3110.        - Commands to self-connect are beings sent to your modem.
  3111.  
  3112.   2)   T1 Loopback commands sent waiting 5 seconds till start of test
  3113.        - The alternate &T0/&T1 instruction set is being used for self tests.
  3114.  
  3115.   3)   Carrier Detected...waiting 5 seconds to the start of the test
  3116.        - The RLS (Received line signal) went to an active state or the Modem
  3117.        Doctor received the words CONNECT from the modem during self-testing.
  3118.        The 5 second delay is necessary to allow some modems to settle down
  3119.        for proper reception of characters during self-tests.
  3120.  
  3121.                                         Page 46
  3122.  
  3123.  
  3124.  
  3125.  
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132.  
  3133.  
  3134.  
  3135.  
  3136.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3137.  
  3138.  
  3139.   4)   Using &T1 Loopback command set to modem for this test
  3140.        - If you selected the Generic driver and the Modem Doctor failed to
  3141.        connect, it uses this &T0/&T1 instruction set automatically for its
  3142.        testing. 
  3143.  
  3144.   5)   Sending 20 Characters to the modem
  3145.        - All Dynamic DTR/DSR and RTS/CTS tests force the modem to self
  3146.        connect. Next either the DTR or RTS lines are dropped, and 20
  3147.        characters are sent to the modem. If no characters are received back
  3148.        to the computer from the modem, then the Modem Doctor reports that
  3149.        the dynamic handshaking works. If a character is received, then it
  3150.        means that type of dynamic handshaking does not work.
  3151.  
  3152.   6)   Sending Xoff Signal to modem
  3153.        - An ASCII character that tells the modem NOT to send data has been
  3154.        transmitted to the modem for dynamic Xon/Xoff testing.
  3155.  
  3156.   7)   Modem is using Xon/Xoff Handshaking properly
  3157.        - 20 characters were sent to the modem, and it properly did not send
  3158.        anything back to the computer.
  3159.  
  3160.  
  3161.   8)   Modem is not using Xon/Xoff Handshake hold
  3162.        - 20 characters were sent to the modem, but it send them back to the
  3163.        computer, indicating it did not recognize the dynamic Xon/Xoff
  3164.        handshake test. Normally most modems do not need this handshake.
  3165.  
  3166.   9)   Sending Xon Signal to the modem
  3167.        - This restores the modem to proper operation and clears its internal
  3168.        data buffers.
  3169.  
  3170.  
  3171.   10)  Warning...I can't test this modem because there is no RTS/CTS
  3172.        signals. If this is an external modem, you may not have a proper
  3173.        cable or the modem is off. If you have an internal, you might have a
  3174.        port conflict or a configuration switch set improperly.
  3175.  
  3176.  
  3177.        - Most times this message is due to an improperly wired cable or a
  3178.        improper configuration of some modem switches. See your modem manual
  3179.        for setup, or use a loopback plug and the Analog loopback mode to
  3180.        test the cable.
  3181.  
  3182.   11)  Setting up the modem for the Originate Mode Carrier Test..please wait
  3183.        Setting up the modem for the Answer Mode Carrier Test.....please wait
  3184.             -Self tests commands are being sent to your modem for the
  3185.             different connect modes and frequencies.
  3186.  
  3187.   General program warnings
  3188.  
  3189.                                         Page 47
  3190.  
  3191.  
  3192.  
  3193.  
  3194.  
  3195.  
  3196.  
  3197.  
  3198.  
  3199.  
  3200.  
  3201.  
  3202.  
  3203.  
  3204.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3205.  
  3206.  
  3207.   ------------------------
  3208.   1)   Note...you hit the Escape Key during testing. This means the results
  3209.        of this test is inconclusive. You should run these tests again
  3210.        without escaping for a valid performance check.
  3211.        - You can press escape during nearly all tests that the Modem Doctor
  3212.        runs (except during crucial communication modes between the modem and
  3213.        computer, in which case as soon as this communication is completed,
  3214.        the Modem Doctor will escape with this warning.
  3215.  
  3216.   2)   INTERRUPT FAILURE Warning
  3217.        Note...No interrupts were detected or generated during testing. This
  3218.        could be due to a failure of your serial port to generate interrupts
  3219.        or you have selected an IRQ line or Comm assignment in error on the
  3220.        serial card or in a custom assignment from the Login menu manual
  3221.        mode. Check your settings and if all is ok, suspect the Uart or
  3222.        serial port card.
  3223.        - This warning can be received anytime that the Modem Doctor tries to
  3224.        talk to a modem or a uart (in analog loopback test). The most common
  3225.        cause of this problem is an incorrect jumper or comm port assignment
  3226.        on your modem or serial port. See the section on IRQ's and their
  3227.        meanings to select the proper IRQ line for your port.
  3228.  
  3229.  
  3230.   3)   Fixed Rate Advisory
  3231.        Note...I had to lower the baud rate to match the connect rate. What
  3232.        this means is that you are using a high speed modem with a fixed link
  3233.        rate in a variable rate mode. You might want to check your DTE/DCE
  3234.        settings in your modem Nram if this is not desired.    
  3235.        - Most high-speed modems keep the link between the computer and the
  3236.        modem running at a fixed rate, while the connection between the modem
  3237.        and the remote modem (bbs or service) operates at another rate. This
  3238.        method allows data compression and greater throughput (characters per
  3239.        second) to be received by the computer. If you have a high-speed 
  3240.        modem, check your settings. It is recommended you run in the fixed
  3241.        link rate whenever possible so you can gain all the benefits of data
  3242.        compression with the new data protocols.
  3243.  
  3244.   4)   Failure Report 
  3245.        RLS (Received Line Signal Detect) indicates that a carrier has not
  3246.        been received by the UART. Check modem or connector wiring 
  3247.        - This is an advisory that you might have a cable wired incorrectly
  3248.        between your computer and external modem or that your modem does not
  3249.        raise the RLS signal. This is only critical if your communication
  3250.        programs never display the words "ON-LINE".
  3251.  
  3252.   5)   Modem not responding to the Analog originate test
  3253.        - Modem never went into the self-test mode. 
  3254.  
  3255.   6)   Carrier Not Detected..5 Sec Sync Delay till start of Answer test    
  3256.  
  3257.                                         Page 48
  3258.  
  3259.  
  3260.  
  3261.  
  3262.  
  3263.  
  3264.  
  3265.  
  3266.  
  3267.  
  3268.  
  3269.  
  3270.  
  3271.  
  3272.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3273.  
  3274.  
  3275.        Modem not responding for Analog answer test
  3276.        - A carrier should have been received by the RLS signal or the words
  3277.        CONNECT from the modem, if not, the &T0/&T1 instructions are sent and
  3278.        the test is performed. If the modem does not respond to this test,
  3279.        then the last message is displayed indicating a problem getting the
  3280.        modem to self-test itself.
  3281.  
  3282.   7)   RLS Warning
  3283.        The Received Line Signal of your modem stayed active throughout the
  3284.        testing. Some modems have a jumper or switch that should be set to
  3285.        carrier is active only when a signal is detected. Check your manual
  3286.        to change this setting so the Modem Doctor and comm programs will
  3287.        work properly. Check your modem to make sure that Carrier isn't
  3288.        forced high 
  3289.  
  3290.   8)   NOTE.Carrier (RLS Line) active, it should not be..test may not be
  3291.        valid.
  3292.        - The RLS signal was always active. This means the Modem Doctor
  3293.        cannot figure out if the modem ever entered the self-test mode. Also,
  3294.        your communications program probably will always display the "ON-
  3295.        LINE" status. Unfortunately, this type of situation is the default
  3296.        setting from the factory of most 2400 bps modems. It can be
  3297.        reprogrammed by a simple setup command. See your modem manual for
  3298.        instructions.
  3299.  
  3300.   9)   SET YOUR MODEM TO ORIGINATE CARRIER FREQUENCY...PRESS TO CONTINUE
  3301.        SET YOUR MODEM TO ANSWER CARRIER FREQUENCY...PRESS TO CONTINUE
  3302.        - Dumb modem tests require you to flip switches on your modem.
  3303.        Usually this is the AL button. After you do this, the Modem Doctor
  3304.        should see a carrier and continue proper testing.
  3305.  
  3306.   10)  Loopback Transmit Error
  3307.        Loopback Queue Failure
  3308.        ESCAPE KEY PRESSED....ABORTING ALL LOOPBACK TESTS
  3309.        UART Control Lines set...waiting 2 seconds for CTS Handshake
  3310.        NO CTS Handshake Detected .Continuing test even though plug/line
  3311.        maybe bad
  3312.        Loopback Queue Failure 
  3313.        UART not responding using Analog Loopback Plug mode
  3314.        No Loopback Plug or General Failure of the Hardware
  3315.        Analog Loopback Test passed without any errors
  3316.        - If the analog loopback did not return characters or generate an
  3317.        interrupt, then the uart may have been tested without a loopback plug
  3318.        attached or there is a failure of the uart. If all was ok, a passed
  3319.        message is displayed.
  3320.  
  3321.   11)  Loopback Transmit Error
  3322.        UART not responding to the Digital Loopback test
  3323.        UART Registers did not set for Loop back test 
  3324.  
  3325.                                         Page 49
  3326.  
  3327.  
  3328.  
  3329.  
  3330.  
  3331.  
  3332.  
  3333.  
  3334.  
  3335.  
  3336.  
  3337.  
  3338.  
  3339.  
  3340.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3341.  
  3342.  
  3343.        UART Digital Test passed without any errors
  3344.        - If no characters were received, then either the uart you are
  3345.        working with is not 100% 8250-B compatible or defective. If
  3346.        everything was ok, a passed message is displayed.
  3347.  
  3348.   12)  Warning, Comm Port 1 is using Com Port 2's address.You should
  3349.        reconfigure your Serial Card to the correct Address.
  3350.        Otherwise,Communication programs won't properly operate.
  3351.  
  3352.   13)  Warning, Comm Port 2 is using Com Port 1's address.
  3353.        Do you want me to correct this for testing purposes only? [Y/N]: 
  3354.        - These error messages are received if the Modem Doctor found a Com2
  3355.        reserved address as Com1, or visa versa. Many PC owners that do not
  3356.        have built-in serial ports make the mistake of assigning a Com2
  3357.        address without having a Com1 installed. The ROM-BIOS cannot correct
  3358.        this problem or even detect it. The Modem Doctor does and will point
  3359.        out the error to you.
  3360.  
  3361.   14)  Flopping COM1/COM2 pointers in Memory only. Note..this is only valid
  3362.        till the next warmboot of your system. You must change your serial
  3363.        card settings to keep this permanent. Note...tests may not work
  3364.        properly because of this error
  3365.        - This message is displayed either in the exchange mode or when the
  3366.        Modem Doctor is asked to fix the problem of addresses in memory for
  3367.        testing only.
  3368.  
  3369.  
  3370.  
  3371.   15)  Logging out incorrect COM1 for testing purposes.
  3372.        Logging out incorrect COM2 for testing purposes.
  3373.        - If you decide not to fix a problem, the incorrect assignment is
  3374.        logged out of Dos and your choices for testing.
  3375.  
  3376.   16)  ALL Available COMM ports are in use...Press to Return
  3377.        - If 4 comm ports (shareware) or 8 comm ports (registered) are
  3378.        already in use, you cannot add any more in the auto-login mode to the
  3379.        Modem Doctor. Use the manual mode to override your choices for
  3380.        testing comm ports higher than 8.
  3381.  
  3382.   17)  Comm (x) Not Found ... override ? :
  3383.        - You told the Modem Doctor in manual mode that a port existed with a
  3384.        certain base port address. It was not found. If you override, this
  3385.        address is logged in for testing. This allows you to test a defective
  3386.        uart chip that might not be recognized by dos or the Modem Doctor as
  3387.        valid.
  3388.  
  3389.   18)  Sorry...your Modem.dat file has an invalid Comm port
  3390.        Sorry...I cannot find Modemdr.dat file in this directory
  3391.        
  3392.  
  3393.                                         Page 50
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399.  
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.  
  3406.  
  3407.  
  3408.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3409.  
  3410.  
  3411.        WARNING...RESERVED PORT ADDRESS in Mdr.dat file
  3412.        correct address in hex must be between [ ]..ie [2F8]
  3413.  
  3414.        Sorry...your Modem.dat file has an invalid Speed..using 300 baud
  3415.  
  3416.        Modem Did not respond to setup string..run the Modem Doctor to check
  3417.        your modem.
  3418.  
  3419.        Programming according to file Mdr.dat
  3420.        Modem Responded to setup string and is ready for use
  3421.  
  3422.        - Running Modem Doctor in the setup (/s) mode, the file MDR.DAT is
  3423.        queried for the proper comm port, address, speed and setup string. If
  3424.        any of this is invalid, one of the messages above is received. If it
  3425.        is valid you receive the message that Modem Doctor is programming
  3426.        according to the Mdr.dat file.
  3427.  
  3428.   19) Standard Assignment Not Verified
  3429.        When Modem Doctor 5.2 starts, it automatically verifies all comm port
  3430.        base addresses and IRQ settings. However, some environments may not
  3431.        tolerate self-testing of IRQ selections. To defeat this setting,
  3432.        Modem Doctor is started with the /Q switch. When operating in this
  3433.        mode, Modem Doctor displays the above message next to the IRQ assignments
  3434.        to indicate that the program has not verified any IRQ assignments.
  3435.  
  3436.  
  3437.  
  3438.  
  3439.  
  3440.  
  3441.  
  3442.  
  3443.  
  3444.  
  3445.  
  3446.  
  3447.  
  3448.  
  3449.  
  3450.  
  3451.  
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.  
  3458.  
  3459.  
  3460.  
  3461.                                         Page 51
  3462.  
  3463.  
  3464.  
  3465.  
  3466.  
  3467.  
  3468.  
  3469.  
  3470.  
  3471.  
  3472.  
  3473.  
  3474.  
  3475.  
  3476.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3477.  
  3478.  
  3479.  
  3480.   Section 6. Special Modes and Information     
  3481.   ---------------------------------------- 
  3482.   The Modem Doctor supports a wide range of "AT" instruction set modems.
  3483.   There are however "supersets" of instructions that manufacturers have used
  3484.   to enhance the capability of their modems. Although there is some
  3485.   structure  in this area, not all commands intermix between different
  3486.   brands and lines of modems. This situation is analogous to PC computer
  3487.   printers, and it  calls for a similar approach. The Modem Doctor now
  3488.   supports the use of "Modem Drivers" to meet these special needs. 
  3489.   Additionally, due to the increase in computers using the ISA bus, there
  3490.   are more interrupt lines free to be used by modem manufacturers. For test
  3491.   purposes, you can use IRQ3,4,5,7 for your hardware testing. Using the
  3492.   special /S switch, you can send initialization codes to your modem from a
  3493.   batch file or other command-line need to setup the modem for use. Finally,
  3494.   to add some flexibility to the Modem Doctor's diagnostics,  some special
  3495.   "Hot-keys" have been added. These have been discussed  above in an
  3496.   operational sense, however in this section you will get some idea of how
  3497.   these can help you speed up testing and test defective or non-compatible
  3498.   hardware.   
  3499.  
  3500.            
  3501.   6.1 Using Modem Drivers 
  3502.   -----------------------  
  3503.   Most Modem's today are built on the original "AT" instruction set that was
  3504.   developed by Hayes Micromodems in their 1200B series. This driver, named
  3505.   the Generic Driver in the Modem Doctor, is used exclusively if the modem
  3506.   returns an ID indicating it is a 300,1200 or 2400 bps modem. Also,       
  3507.   if the modem does not return an ID, this Generic Driver is used.  The
  3508.   Generic Driver can be used to test nearly all modems, however there are
  3509.   some 2400 bps modems that were  built using the command structure that
  3510.   Hayes Micromodems put into their 2400B line. These modems used an "&" for
  3511.   some  modem setup and command functions. The Modem Doctor has a driver for
  3512.   these modems called the "&T0/&T1" driver. Using this driver, the Modem
  3513.   Doctor can perform a simulated  carrier test. During your testing of this
  3514.   type of modem, you will notice the MB (Modem Busy) light flashing on your  
  3515.   external modem. This driver (and all others) is user selectable, however
  3516.   the Modem Doctor will automatically switch to it when performing the
  3517.   carrier tests if the Modem was detected to be a 2400 bps modem.  The last
  3518.   driver currently supported is for US Robotics Courier HST and HST
  3519.   Dual/Standard V.32 Modems. The Modem Doctor recognizes these modems upon
  3520.   initial testing and sets up its test parameters a certain way to
  3521.   compensate for their Carrier self test limitations. 
  3522.           
  3523.   Because of the trellis-encoded Async/modulation of the USR HST Mode, the
  3524.   maximum Carrier test Baud rate is 2400 bps (see the USR Manual for this
  3525.   info). To work around this, the Modem Doctor Programs these modems to use
  3526.   a fixed DTE/DCE  Rate with the &B1 Parameter, allowing communications to
  3527.   and  from the modem at speeds up to 19200 bps. When working in the V.32 
  3528.  
  3529.                                         Page 52
  3530.  
  3531.  
  3532.  
  3533.  
  3534.  
  3535.  
  3536.  
  3537.  
  3538.  
  3539.  
  3540.  
  3541.  
  3542.  
  3543.  
  3544.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3545.  
  3546.  
  3547.   mode however, the Carrier test (and all loopback tests ) can be performed
  3548.   at 9600 since the modulation is symmetrical again. Also when the selected
  3549.   baud rate is higher than 2400 bps, the MNP Protocol switch is set to &M0,
  3550.   otherwise if there was an error, the Modem would try to correct it instead
  3551.   of passing the error on to the Modem Doctor. None of these changes is
  3552.   saved to the non-volatile ROM,  so you should not experience a problem.
  3553.   However, the V.32 and Dual Standard Modems might experience a problem if
  3554.   register S13 is not set to 1. This is the default from the factory and
  3555.   insures that the modem will be reset when the DTR line is dropped. If you
  3556.   are experiencing a problem, use the interactive mode and type S13=001.
  3557.   This change is not permanent. If you are using a USR Dual Standard Modem,
  3558.   then the Modem Doctor will test whatever mode is active via the B switch.
  3559.   If the current Modem setting is B0, then the V.32 mode will be tested, if
  3560.   B1 is set, then the HST mode will be tested. You can change this setting
  3561.   to whatever you wish by using the Interactive mode, type ATZ, then type
  3562.   ATB0 &W or ATB1 &W. This has to be written to the firmware in order to
  3563.   stay valid throughout all the testing, but the ATZ  command before a save
  3564.   will always recall your settings,  insuring you have only changed the one
  3565.   parameter. Please note, this is included for advanced users and is one of
  3566.   the reasons for the interactive mode. It is not necessary for you to do
  3567.   this to test your modem unless you wish to. For more information, see   
  3568.   the section regarding "Quirks". As mentioned above, all of the Modem
  3569.   Drivers are self- selecting, but can be user-selected. The status line of
  3570.   your screen will display the current Port assignment, the current Baud
  3571.   rate, the status of the Microprocessor, and the current modem driver being
  3572.   used. Select carrier test from the main menu and move the bar to "Select
  3573.   Modem Commands". You will be given a choice of the available drivers.
  3574.   After you select, the status line will be updated, and you can either
  3575.   start the test or return to the main menu.  The reason for modem drivers
  3576.   is to allow more individualized testing of a particular type of modem, and
  3577.   to allow for more modems to added to the list of specially supported
  3578.   modems.
  3579.  
  3580.   6.11 External Modem Drivers
  3581.   ---------------------------
  3582.   Supported starting with version 4.0 is the ability to read a specially
  3583.   created external modem driver file. This file makes it possible to handle
  3584.   any future changes in modems by simply releasing a new driver file. When
  3585.   the Modem Doctor first begins, it looks in the default directory for the
  3586.   existence of this driver file. If it exists, a valid checksum is performed
  3587.   to see that it is indeed a modem driver. If so, this external set of
  3588.   commands is inserted in place of the internally contained modem drivers.
  3589.   As of the initial release of 4.0, there are no external driver files in
  3590.   circulation. Driver files will be released under 2 conditions; first, if a
  3591.   bug is detected in any of the driver routines, a shareware driver file
  3592.   will be released on the bulletin boards at no cost. Registered users will
  3593.   be mailed at no cost the updated driver file. Second, if a registered user
  3594.   would like a custom modem driver file written, we will create one at 
  3595.   minimal charge as long as proper documentation for the type of modem is
  3596.  
  3597.                                         Page 53
  3598.  
  3599.  
  3600.  
  3601.  
  3602.  
  3603.  
  3604.  
  3605.  
  3606.  
  3607.  
  3608.  
  3609.  
  3610.  
  3611.  
  3612.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3613.  
  3614.  
  3615.   submitted. If you wish to have an interface written, please contact us for
  3616.   pricing and appropriate  information that we will need to do this for you.
  3617.            
  3618.            
  3619.   6.2 Using the Command Line Mode switch /S 
  3620.   ----------------------------------------  
  3621.   There can be special occasions where you need to initialize and test a
  3622.   modem before another program can be run. The Modem Doctor now supports a
  3623.   method to do this. Using the command line switch /S, you can instruct the
  3624.   Modem Doctor to "wake-up" a Modem and send an initialization string to it.
  3625.  
  3626.   Although similar to our product Comset, it offers some additional
  3627.   flexibility but does not allow the serial port only setup that Comset
  3628.   does.   To use this special mode, you need to have a companion file named
  3629.   MDR.DAT that you create  with any ASCII text editor that follows this
  3630.   format;  
  3631.  
  3632.        1) All information must start on the first space on each line         
  3633.        and can consist of up to 3 lines. Line 1 and Line 2 are      
  3634.        required.  
  3635.            
  3636.        2) Line 1 = Port Number 1 through 8 and an optional port address in
  3637.        [] ( For settings greater than Port 4, this address is required).
  3638.  
  3639.        3) Line 2 = the Baud Rate you wish to use (300-56000 or 3-560 are
  3640.        acceptable).  
  3641.           
  3642.        4) Line 3 = the initialization string you wish to send. This string
  3643.        must start with AT and can be up to 80 characters long. If no string
  3644.        is included in the file, or if it does not begin with the letters AT,
  3645.        then ATZ is automatically sent to the modem.   
  3646.            
  3647.        Example..to setup Port 2 to 19200 and set S7 to 255;  
  3648.        Make a file called MDR.DAT that looks like this;        
  3649.  
  3650.            2 [2F8]<--note for Port 1-4 unless it is non-standard [2F8] 
  3651.                      is not needed   
  3652.            192   
  3653.            AT S7= 255  
  3654.        Next, start the Modem Doctor by typing  MDR /S. As long as the
  3655.        MDR.DAT file is in the current working directory, these commands will
  3656.        be sent. If not, you will get an error message stating that MDR.DAT
  3657.        could not be found.  
  3658.  
  3659.        Why not have the Modem Doctor search all directories for the file?
  3660.        Well, the reason is so that you can put MDR.EXE in a Dos path but
  3661.        have individualized setup MDR.DAT files in different subdirectories
  3662.        for different programming needs. Instead of constantly changing the
  3663.        file, make different ones and call MDR.EXE. It will only use the
  3664.  
  3665.                                         Page 54
  3666.  
  3667.  
  3668.  
  3669.  
  3670.  
  3671.  
  3672.  
  3673.  
  3674.  
  3675.  
  3676.  
  3677.  
  3678.  
  3679.  
  3680.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3681.  
  3682.  
  3683.        MDR.DAT file in the current working directory.
  3684.  
  3685.  
  3686.  
  3687.  
  3688.  
  3689.  
  3690.  
  3691.  
  3692.  
  3693.  
  3694.  
  3695.  
  3696.  
  3697.  
  3698.  
  3699.  
  3700.  
  3701.  
  3702.  
  3703.  
  3704.  
  3705.  
  3706.  
  3707.  
  3708.  
  3709.  
  3710.  
  3711.  
  3712.  
  3713.  
  3714.  
  3715.  
  3716.  
  3717.  
  3718.  
  3719.  
  3720.  
  3721.  
  3722.  
  3723.  
  3724.  
  3725.  
  3726.  
  3727.  
  3728.  
  3729.  
  3730.  
  3731.  
  3732.  
  3733.                                         Page 55
  3734.  
  3735.  
  3736.  
  3737.  
  3738.  
  3739.  
  3740.  
  3741.  
  3742.  
  3743.  
  3744.  
  3745.  
  3746.  
  3747.  
  3748.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3749.  
  3750.  
  3751.            
  3752.        After the initialization string is sent, the Modem Doctor will wait
  3753.        up to 10 seconds for the word "OK" to return from  the modem. If it
  3754.        does not, you will get a message saying the modem failed to setup. In
  3755.        either case, whatever your modem sent to the Modem Doctor will be
  3756.        displayed. If you see the word "ERROR", that was sent from the modem,
  3757.        it probably means that your initialization string was not correct. No
  3758.        message returning could indicate a problem with the modem, or an
  3759.        invalid baud rate. When it finishes executing, the Modem Doctor
  3760.        returns an errorlevel to the calling program. An errorlevel of 0 is
  3761.        normal, an errorlevel of 99 indicates a failure. You can use these
  3762.        errorlevels to control batch processes if you wish to.  
  3763.        Also, this mode of the Modem Doctor uses bios screen writes, so all
  3764.        of the information displayed can be redirected to a printer, a file,
  3765.        or whatever other DOS device you wish.  Example...to send the output
  3766.        of this test to a file called Test.txt...  
  3767.  
  3768.             MDR /S  > TEST.TXT or    MDR /S >> TEST.TXT (if you wish to
  3769.             append an existing Test.txt file.  
  3770.  
  3771.   If the Modem Doctor setup was successful, the modem's DTR and RTS lines
  3772.   stay active, if not, they are dropped.  If you need more specialized
  3773.   command-line modes of operation, you might consider Comset. Comset allows
  3774.   Serial Ports and Modems to be setup at various rates and under various
  3775.   conditions. Registered Modem Doctor users get a 15% discount! You can 
  3776.   find Comset on most BBS's as COMSET7.ZIP.   
  3777.       
  3778.   6.3 Using the Hot-Keys 
  3779.   ----------------------  
  3780.   Hot-Keys are combinations of the ALT key plus a letter. The Modem Doctor
  3781.   adds several of these Hot-keys to make it easier to test  modems at
  3782.   different baud rates and to  circumvent some of the error checking that
  3783.   the program performs under normal circumstances.  
  3784.            
  3785.   ALT-B Change Baud rate - 
  3786.   If you are testing a system that you suspect has a problem, it is best to
  3787.   use the setup mode when changing the baud rate. The Setup mode will test
  3788.   all the registers, and the modem microprocessor (if selected) and assure
  3789.   you that all the hardware is communicating properly at each baud rate.
  3790.   However, if you feel a system is running fine, using the ALT-B from the
  3791.   main menu can save time when running tests at different baud rates. Press
  3792.   ALT-B  and select the baud rate (taking care not to select a rate higher
  3793.   that what your modem is rated for if you are doing modem tests). ALT-B
  3794.   works from the main menu, and from inside the Manual interactive mode.   
  3795.            
  3796.   ALT-C Clear Screen - 
  3797.   This key is only active inside of the Manual interactive mode and is used
  3798.   to clear the text window of any characters.  
  3799.  
  3800.  
  3801.                                         Page 56
  3802.  
  3803.  
  3804.  
  3805.  
  3806.  
  3807.  
  3808.  
  3809.  
  3810.  
  3811.  
  3812.  
  3813.  
  3814.  
  3815.  
  3816.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3817.  
  3818.  
  3819.                     
  3820.   ALT-F Force Microprocessor on-line - 
  3821.   The Modem Doctor has many tests built-in to verify the working condition
  3822.   of a microprocessor-based modem and will not allow a modem to be tested in
  3823.   the "AT" instruction set mode if it has not properly addressed and setup a
  3824.   modem microprocessor. Using the ALT-F combination forces the Modem Doctor
  3825.   to perform tests as if it had properly setup a modem. This feature should
  3826.   be used with care, however  its primary benefit is to help you test a
  3827.   malfunctioning modem to see exactly what commands it will respond to.
  3828.   Pressing ALT-F also updates the status bar to indicate that the modem
  3829.   microprocessor is on-line (which may or may not be the case after this
  3830.   command was issued). Version 4.0 of Modem Doctor makes this hot-key a
  3831.   toggle, so pressing 1 time will change the on-line status. Pressing again
  3832.   returns it back to normal.
  3833.  
  3834.   ALT-H Help -
  3835.   You can press this key at any time to get help on a topic or general help
  3836.   depending on if you are in a menu or at the main menu selection bar.
  3837.  
  3838.   ALT-R Register Display - 
  3839.   This is only active inside of the Manual interactive mode and is used to
  3840.   display the status of all Uart registers on the screen for diagnostic
  3841.   purposes.  
  3842.  
  3843.   ALT-X Exit Mode - 
  3844.   This is only active inside of the Manual interactive mode and is used to
  3845.   exit this mode. 
  3846.  
  3847.   Control -Break
  3848.   --------------
  3849.   This allows an immediate exit from anywhere permissible inside the Modem
  3850.   Doctor, however it offers you a choice to clean up or to continue. You
  3851.   should not use this mode, it is better to exit via the Main menu
  3852.   selection.
  3853.  
  3854.   6.4 Logging in Defective Ports 
  3855.   ------------------------------  
  3856.   If a serial port Uart is defective, the Modem Doctor will refuse to log it
  3857.   in for testing. This is necessary because there is no way for it to know
  3858.   what ports are defective and what are non-existent. However in Version
  3859.   4.0, you can now log-in a defective chip for testing. The procedure to do
  3860.   so is explained above under Manual Login. The reason for doing so however
  3861.   might not have been apparent. If any register of a serial port is
  3862.   defective, it might not function properly. Logging in this defective port
  3863.   will give you the full benefit of the Uart and Serial port diagnostics.
  3864.   Error messages will be displayed, in most cases there will be multiple
  3865.   error messages. There are two possible causes of a defective port; the
  3866.   Uart chip and the Serial Port address system. If it is a chip, simply
  3867.   replacing the chip fixes the problem. If it is a serial port instead, then
  3868.  
  3869.                                         Page 57
  3870.  
  3871.  
  3872.  
  3873.  
  3874.  
  3875.  
  3876.  
  3877.  
  3878.  
  3879.  
  3880.  
  3881.  
  3882.  
  3883.  
  3884.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3885.  
  3886.  
  3887.   the same problem will repeat. How do you approach this? Well for starters,
  3888.   check that the strapping on your serial port board matches the correct
  3889.   COMM port assignment (ie strapped for COM1 for COM1..etc). Next, if there
  3890.   is user selectable IRQ assignments, make sure it again matches the COMM
  3891.   port assignment (IRQ4 for COM1/3, IRQ3 for COM2/4, IRQ5 for COM7/8, IRQ7
  3892.   for COM6/7). If all this is set properly, then you can suspect the chip,
  3893.   but also the Serial Port hardware that gates the address of the chip to
  3894.   the computer. Finally, if you get warnings about status, but the chip logs
  3895.   in, then  you might just have a bad cable from the computer to the modem
  3896.   (NOTE: The Modem Doctor does not consider this an error but simply
  3897.   displays a warning and allows the Uart to be logged-in for use).       
  3898.  
  3899.  
  3900.  
  3901.  
  3902.  
  3903.  
  3904.  
  3905.  
  3906.  
  3907.  
  3908.  
  3909.  
  3910.  
  3911.  
  3912.  
  3913.  
  3914.  
  3915.  
  3916.  
  3917.  
  3918.  
  3919.  
  3920.  
  3921.  
  3922.  
  3923.  
  3924.  
  3925.  
  3926.  
  3927.  
  3928.  
  3929.  
  3930.  
  3931.  
  3932.  
  3933.  
  3934.  
  3935.  
  3936.  
  3937.                                         Page 58
  3938.  
  3939.  
  3940.  
  3941.  
  3942.  
  3943.  
  3944.  
  3945.  
  3946.  
  3947.  
  3948.  
  3949.  
  3950.  
  3951.  
  3952.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  3953.  
  3954.  
  3955.            
  3956.   6.5 What tests cannot Do     
  3957.   ------------------------     
  3958.   Although I tried to be extremely thorough in my tests, there are
  3959.   somethings that tests just cannot do or pinpoint. If you are having
  3960.   problems with excessive line-noise, you might have a bad connection
  3961.   between your modem and your telephone wiring in the house. Another
  3962.   possibility, although remote, is that your modem does not offer the
  3963.   correct input impedance to the telephone line. This can cause poor  
  3964.   connections. The problem is with the electronic design of the modem, and
  3965.   again, it is more prevalent in inexpensive modems. Also, tests cannot
  3966.   check that the communications program you are using is set up correctly.
  3967.  
  3968.   At times,  installing a communications package can be very challenging for
  3969.   a novice user. Tests also cannot check the wiring in your serial Cable.
  3970.   The Modem Doctor will tell you if a handshaking pair is missing, but it
  3971.   cant tell you why. It could be because the Uart is bad, but more than
  3972.   likely, your RS-232 Cable doesn't carry all of the handshaking signals to
  3973.   or from the external modem or serial device. This can be important if you
  3974.   are using a high-speed modem. Most High-speed modems will drop the CTS
  3975.   line when their communication buffers are full. Previous Modems ignored 
  3976.   the RTS/CTS signals and instead used the DTR/DCE pair. What this means is
  3977.   that if you buy a new modem, it might not work with the older-cable (yet
  3978.   at the same time the older modem will work..which might lead you to
  3979.   believe that you have a defective modem).      
  3980.            
  3981.   6.6 Quirks with Some Modems     
  3982.   ---------------------------      
  3983.   Carrier tests - 
  3984.   Some Modems have two "AT" instruction sets, usually referred to as
  3985.   Compatible and Enhanced. If your modem does not perform a carrier test at
  3986.   speeds below 4800, then this is usually the case. Some modems provide a
  3987.   dip-switch or a toggle switch to select either mode. Setting your modem to
  3988.   the Standard Compatible Mode should get rid of your problems below 4800
  3989.   bps. Also, make sure you select the Generic Compatible Modem Driver unless
  3990.   you are sure your modem matches the modem's that have special drivers
  3991.   written especially for their use. At speeds above 4800 bps, the Modem
  3992.   Doctor is only compatible with USR V.32, Dual Standards (V.32 and HST) and
  3993.   HST brand of modems, Hayes V9600 and Ultra 9600, and Courier 2400 modems.
  3994.   If you wish to test another brand of modem that is not compatible, simply
  3995.   turn off any modem-hardware error correcting using the Manual mode and
  3996.   following the information in your modem users manual. Then select the
  3997.   Generic Modem Driver and you should be able to test your modem properly.
  3998.   Finally, if only one of the tests (Originate or Answer) runs and NO      
  3999.   CARRIER is displayed for the other, the problem lies with the Enhanced
  4000.   Command settings of your modem. Hayes Modems use &T1 through &T8 commands
  4001.   for their 2400 and also have other special switches. The &T0 command set
  4002.   is tried by this version of the Modem Doctor automatically, however there 
  4003.   is no compensation for any other type of modems that use non-standard
  4004.  
  4005.                                         Page 59
  4006.  
  4007.  
  4008.  
  4009.  
  4010.  
  4011.  
  4012.  
  4013.  
  4014.  
  4015.  
  4016.  
  4017.  
  4018.  
  4019.  
  4020.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  4021.  
  4022.  
  4023.   commands. Again for the sake of compatibility with the widest range of
  4024.   modems at speeds below 4800, this cannot be corrected for in this version.
  4025.   Considering the vast numbers of "AT" compatible modems in the marketplace,
  4026.   these two exceptions are minor and will not affect most users. Finally,
  4027.   users of 8250 compatible Uarts that do not support the Digital (Chip)
  4028.   Loopback will get an error. This should be of no concern.  However if the
  4029.   test runs for a while, then fails, it could indicate a problem with your
  4030.   Uart. This is explained in the pull-down window in the program. The Modem
  4031.   Doctor has been tested on about 25 Modems from Major Manufacturers and on
  4032.   a variety of Clones and Compatibles (plus the "Real Thing"). It is
  4033.   possible that a certain combination of hardware still might give problems,
  4034.   however if you are a registered user, I will find a way to make it work.  
  4035.  
  4036.   6.7 Buffered vs Direct Connect Modems
  4037.   -------------------------------------
  4038.   When testing high speed modems, you should note that some of them cannot
  4039.   test in the a "buffered mode", which means that they will not be able to
  4040.   self-test in carrier mode above speeds of 9600. The Hayes Ultra's fall into
  4041.   this category. The higest DTE/DCE rate you can use and still generate a
  4042.   successful carrier test is 9600 bps. Any higher DTE rate will cause Modem
  4043.   Doctor to return errors that are not valid. 
  4044.            
  4045.            
  4046.   Section 7. Benefits of Registration     
  4047.   ------------------------------------      
  4048.   Thank you for your registration. The Current Registered Version # of the
  4049.   Modem Doctor is 4.0R. All Registered Users are entitled to free
  4050.   Maintenance updates and these will be reflected by changes in the decimal
  4051.   fraction number..ie  4.01, 4.02. Also, if a new super-duper version comes
  4052.   out (5.X or 6.X), all registered users will be able to update for only $7
  4053.   (plus shipping,handling and tax where applicable). Currently registered
  4054.   users of version 2 and 3 can update for $5 (plus shipping, handling and
  4055.   tax where applicable). If you have trouble with the Modem Doctor, or
  4056.   questions, feel free to call or write. When doing either you will need to
  4057.   have the Version Number, your serial number,  and in some cases the Module
  4058.   Identification Number. The Version number is displayed when you first
  4059.   start the program along with the serial Number. The Module Identification
  4060.   numbers can be displayed at any time from the main menu after you pass the
  4061.   initial setup mode. Simply type a # sign, and all of the modules that make
  4062.   up the Modem Doctor will display their version numbers on the screen.
  4063.   Right now, all Modules have identical version numbers from program to
  4064.   program, but in the future, there could be custom modules for registered
  4065.   users, so in this case the Module ID could become important. You can reach
  4066.   us with your questions at 410-256-5767 or write to ;
  4067.                                   Hank Volpe
  4068.                                  PO Box 43214
  4069.                                Baltimore MD 21236
  4070.            
  4071.                  Thanks again for registering the Modem Doctor.
  4072.  
  4073.                                         Page 60
  4074.  
  4075.  
  4076.  
  4077.  
  4078.  
  4079.  
  4080.  
  4081.  
  4082.  
  4083.  
  4084.  
  4085.  
  4086.  
  4087.  
  4088.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  4089.  
  4090.  
  4091.   You can always download the latest shareware version and other communication 
  4092.   utilities from the Modem Doctor BBS at 410-256-3631 (300/1200/2400/9600 HST 
  4093.   [soon V.32bis]). Also, if you write your questions on the BBS, you will get a 
  4094.   faster response than if you had written via the mail. 
  4095.  
  4096.  
  4097.   Notes -     [+] References to USR /Courier/Dual Standard/HST
  4098.                        Copyrighted by US Robotics     
  4099.            
  4100.            [++] References to AT Instruction Set ,Smartmodem,Hayes
  4101.                 Copyrighted by Hayes Inc.
  4102.            
  4103.            References to MNP refer to An error free protocol 
  4104.            Copyrighted by Microcom Inc.     
  4105.  
  4106.           References to dos, microsoft, copyrighted by IBM or Microsoft
  4107.           References to 8250B or other uarts are copyrighted by a 
  4108.           variety of manufacturers including (but not limited to ) 
  4109.               Intel, National Semiconductor.
  4110.     
  4111.            
  4112.        
  4113.  
  4114.       
  4115.   Disclaimer -  
  4116.   It is not the intent of the author to recommend any brand of modem over
  4117.   another nor to infringe on the copyrights of the manufacturers by
  4118.   mentioning their products. A modem fits a need, and whatever one works for 
  4119.   you is the one you should have. As time goes on, more modems will be added
  4120.   to the list of "special enhanced " tests. The modems mentioned are done so
  4121.   only because of the popularity they enjoy and for no other reason. All
  4122.   programming of modems for testing is done with simple character strings,
  4123.   similar to any type of data that can be sent to a modem or a serial port.
  4124.   Any modem, whether AT compatible or not, can be handled by the Modem
  4125.   Doctor with special software drivers. These software drivers will be
  4126.   distributed free of charge as needed for general use. Custom drivers
  4127.   created by Hank Volpe for particular clients however will require a fee
  4128.   for handling and programming time.
  4129.  
  4130.  
  4131.  
  4132.  
  4133.  
  4134.  
  4135.  
  4136.  
  4137.  
  4138.  
  4139.  
  4140.  
  4141.                                         Page 61
  4142.  
  4143.  
  4144.  
  4145.  
  4146.  
  4147.  
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.  
  4154.  
  4155.  
  4156.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  4157.  
  4158.  
  4159.  
  4160.   Modem Doctor History
  4161.  
  4162.  
  4163.            Ver 5.2 -  The /Q switch was added to the command line interface to
  4164.                       allow for the user to bypass the IRQ self-tests. Some 
  4165.                       computer environments may freeze when self-tests of
  4166.                       IRQ lines are performed. In this case, running with the
  4167.                       /Q switch will bypass these tests. No other changes
  4168.                       were made to the program.
  4169.                       
  4170.            Ver 5.1 -  Program was recompiled to remove Borland C++ optimizations
  4171.                       which were found to cause STACK problems running under
  4172.                       Digital Research's DR/DOS 6.0. No other changes were
  4173.                       made to the program.
  4174.  
  4175.            Ver 5.0 -  New tests added to verify IRQ operation, verify proper
  4176.                       Comm port/IRQ selection, added NULL tests to Interactive
  4177.                       selection. Structure changed for drivers to include 
  4178.                       handling all modem identification codes. All window
  4179.                       routines changed to directly drive displays (vs working 
  4180.                       through standard C library interfaces), S-register window 
  4181.                       display added to REGS menu, intefaces added to handle 
  4182.                       generic INT14 and FOSSIL drivers, bypassing all direct 
  4183.                       control of hardware while in that mode. 
  4184.  
  4185.                       Other updates include identification of mouse drivers 
  4186.                       and re-activation upon exit, ability to handle accurate 
  4187.                       timing loops on machines with a system speed of 50mhz+, 
  4188.                       addition of interrupt driven transmit routines. Addition 
  4189.                       of 5 new uart internal tests.
  4190.         
  4191.            Ver 4.0 -  New tests added for dynamic handshaking and static 
  4192.                       handshaking. New report generator features, new
  4193.                       exchange mode. Higher baud rates, cleaner windows that
  4194.                       grow to meet commands. Recognition of mouse inputs via
  4195.                       a compatible mouse driver. Expansion of internal modem
  4196.                       drivers and ability to read external modem drivers.
  4197.                       Improved brute-force reading for faster digital
  4198.                       loopback tests. Automatic aborting of modem tests when
  4199.                       IRQ failures are detected. New advisories for fixed-
  4200.                       link rate, IRQ failures, wrong comm port assignments,
  4201.                       swapped comm port assignments. Addition of custom
  4202.                       color selections, pulldown windows that stay when
  4203.                       left-right arrow keys are moved. Updating of 16550 AN
  4204.                       support for resetting and clearing buffers.
  4205.                       Replacement of all internal comm drivers with new dos
  4206.                       independent routines. Correction of many (and
  4207.                       hopefully all) spelling errors.
  4208.  
  4209.                                         Page 62
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.  
  4222.  
  4223.  
  4224.          Modem Doctor 5.2 Technical Reference Manual Copyright 1993 Hank Volpe
  4225.  
  4226.  
  4227.            Ver 3.0 - New tests added for 16450/16550/16550AN Uarts.
  4228.                      Improved Control-Abort handling, Regs command now 
  4229.                      performs a full diagnostic call when activated. 
  4230.                      Hot-Keys added (Force Micro, Baud Rate Select). 
  4231.                      Modem Driver software added to program, Status Bar 
  4232.                      added to program. Support for IRQ 3,4,5,7 added 
  4233.                      via COM1 through COM8 log-ins. Speed increased to 
  4234.                      38.4KB. /S Command line option added for setup of 
  4235.                      a modem including batch file errorlevel support. 
  4236.                      Escape key functionality added to Carrier Tests 
  4237.                      and the loopback tests.
  4238.  
  4239.           Ver 2.2 - Corrects a bug in Ver 2.1 Communication routines
  4240.                      that caused some modems to lock-out because they 
  4241.                      were waiting for two carriage returns to begin. 
  4242.                      Also it added 4 diagnostic Uart tests
  4243.            
  4244.            Ver 2.1 - This version was a Beta test. A Beta tester 
  4245.                      accidentally uploaded this to several boards. 
  4246.                      Please remove all Ver 2.1S software that you may 
  4247.                      find.
  4248.            
  4249.            Ver 2.0 - This version also was a Beta test with support
  4250.                      for COM1-2 and 2400 bps maximum
  4251.            
  4252.            Ver 1.0 - First test version
  4253.  
  4254.  
  4255.  
  4256.  
  4257.  
  4258.  
  4259.  
  4260.  
  4261.  
  4262.  
  4263.  
  4264.  
  4265.  
  4266.  
  4267.  
  4268.  
  4269.  
  4270.  
  4271.  
  4272.  
  4273.  
  4274.  
  4275.  
  4276.  
  4277.                                         Page 63
  4278.  
  4279.  
  4280.  
  4281.  
  4282.  
  4283.  
  4284.  
  4285.